Systems and methods for generating a data structure from multiple bim files

ABSTRACT

A method includes receiving a first building information model (BIM) file and a second BIM file, the first and second BIM files both associated with a building comprising one or more assets, identifying a first set of BIM objects within the first BIM and a second set of BIM objects within the second BIM, the first set of BIM objects and the second set of BIM object each comprising one or more BIM objects associated with the one or more assets, identifying one or more relationships between objects of the first set of BIM objects and objects of the second set of BIM objects, applying a semantic description to the first set of BIM objects, the second set of BIM objects, and the one or more relationships, and generating a data structure comprising the first set of BIM objects, the second set of BIM objects, and the relationships.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application claims the benefit of and priority to Indian PatentApplication No. 201941054631, filed Dec. 31, 2019, which is incorporatedby reference herein in its entirety.

BACKGROUND

The present disclosure relates generally to building information models(BIMs) and more particularly to systems and methods for configuring BIMsand generating graphical (e.g., three dimensional, or 3D) models fromBIM data.

A BIM is a representation of the physical and/or functionalcharacteristics of a building. A BIM may represent structuralcharacteristics of the building (e.g., walls, floors, ceilings, doors,windows, etc.) as well as the systems or components contained within thebuilding (e.g., lighting components, electrical systems, mechanicalsystems, HVAC components, furniture, plumbing systems or fixtures,etc.). In some embodiments, a BIM is a 3D graphical model of thebuilding. A BIM may be created using computer modeling software or othercomputer-aided design (CAD) tools and may be used by any of a pluralityof entities that provide building-related services.

Configuring a BIM can be a time consuming process, and configuring BIMsand generating 3D graphical models may not be easily understandable formany users. Further, BIM software often has functional limitations, suchas allowing manipulation and/or presentation of only one BIM file at atime. It would be desirable to use systems and methods to configure BIMsthat automate at least a portion of the configuration process.Additionally, such systems and methods would preferably make BIMconfiguration and facility management more accessible, for example, byproviding more intuitive user interfaces or by reducing the complexityin organizing and navigating between and within BIMs.

SUMMARY

One implementation of the present disclosure is a method. The methodincludes receiving, by one or more processors, a first buildinginformation model (BIM) file and a second BIM file, the first BIM fileand the second BIM file both associated with a building including one ormore assets; identifying, by the one or more processors, a first set ofBIM objects within the first BIM file and a second set of BIM objectswithin the second BIM file, the first set of BIM objects and the secondset of BIM objects each including one or more BIM objects associatedwith the one or more assets; identifying, by the one or more processors,one or more relationships between objects of the first set of BIMobjects and objects of the second set of BIM objects; applying, by theone or more processors, a semantic description to the first set of BIMobjects, the second set of BIM objects, and the one or morerelationships; and after applying the semantic description, generating,by the one or more processors, a data structure including the first setof BIM objects, the second set of BIM objects, and the relationships.

In some embodiments, the method further includes identifying, by the oneor more processors, a hierarchy level for the first BIM file and thesecond BIM file, and the hierarchy level indicates a category for acorresponding BIM file.

In some embodiments, identifying the hierarchy level for the first BIMfile and the second BIM file further includes receiving, by the one ormore processors, a first user input selecting a particular hierarchylevel as a placeholder and linking, by the one or more processors, thefirst BIM file and the second BIM file to the placeholder.

In some embodiments, at least one of the one or more assets are spaceswithin the building.

In some embodiments, the data structure further includes a hierarchicallist of the spaces within the building.

In some embodiments, the method further includes presenting, via agraphical user interface, a representation of the data structure.

In some embodiments, the method further includes mapping, by the one ormore processors, the first set of BIM objects and the second set of BIMobjects to one or more points within a building automation system (BAS).

In some embodiments, the semantic description is a natural languagedescription.

Another implementation of the present disclosure is a system. The systemincludes one or more memory devices having instructions stored thereonthat, when executed by one or more processors, cause the one or moreprocessors to perform operations including receiving a first buildinginformation model (BIM) file and a second BIM file, the first BIM fileand the second BIM file both associated with a building including one ormore assets; identifying a first set of BIM objects within the first BIMand a second set of BIM objects within the second BIM, the first set ofBIM objects and the second set of BIM object each including one or moreBIM objects associated with the one or more assets; identifying one ormore relationships between objects of the first set of BIM objects andobjects of the second set of BIM objects; applying a semanticdescription to the first set of BIM objects, the second set of BIMobjects, and the one or more relationships; and after applying thesemantic description schema, generating a data structure including thefirst set of BIM objects, the second set of BIM objects, and therelationships.

In some embodiments, the operations further including identifying ahierarchy level for the first BIM file and the second BIM file, and thehierarchy level indicates a category for a corresponding BIM file.

In some embodiments, identifying the hierarchy level for the first BIMfile and the second BIM file further includes receiving a first userinput selecting a particular hierarchy level as a placeholder andlinking the first BIM file and the second BIM file to the placeholder.

In some embodiments, at least one of the one or more assets are spaceswithin the building.

In some embodiments, the data structure further includes a hierarchicallist of the spaces within the building.

In some embodiments, the operations further including presenting, via agraphical user interface, a representation of the data structure.

In some embodiments, the operations further including mapping the firstset of BIM objects and the second set of BIM objects to one or morepoints within a building automation system (BAS).

In some embodiments, applying the semantic description includes mappingthe first set of BIM object, the second set of BIM objects, and therelationships to Brick schema.

Yet another implementation of the present disclosure is a method. Themethod includes receiving two or more building information model (BIM)files corresponding to a building including one or more building assets;identifying, for the two or more BIM files, hierarchy levelscorresponding to spaces within the building; generating a site portfoliobased on the hierarchy levels for the two or more BIM files, wherein thesite portfolio is a data structure that includes a plurality of BIMobjects associated with the two or more BIM files and definesrelationships between the plurality of BIM objects according to thehierarchy levels; and presenting, via a user interface, a representationof the site portfolio and a 3-dimensional (3D) model of the buildingbased on the two or more BIM files.

In some embodiments, the one or more building assets include at leastone of building equipment or spaces within the building.

In some embodiments, the method further includes applying a semanticdescription schema to the two or more BIM files, the semanticdescription schema describing the plurality of BIM objects andrelationships between the BIM objects in a natural language.

In some embodiments, the method further includes mapping the pluralityof BIM objects to one or more points of a building automation system(BAS).

Yet another implementation of the present disclosure is a system. Thesystem includes one or more memory devices having instructions storedthereon that, when executed by one or more processors, cause the one ormore processors to perform operations including obtaining buildinginformation model (BIM) data associated with a building including one ormore building assets; identifying one or more BIM objects within the BIMdata, the one or more BIM objects associated with the one or morebuilding assets; identifying one or more object relationships betweenthe one or more BIM objects; applying semantic descriptions to the oneor more BIM objects and the one or more object relationships; andgenerating a hierarchy structure for the building based on the one ofmore BIM objects and the one or more object relationships, the hierarchystructure including the semantic descriptions of the one or more BIMobjects and the one or more object relationships.

In some embodiments, the operations further include extracting metadatafrom the BIM data, and the metadata is used to identify the one or moreBIM objects and the one or more object relationships.

In some embodiments, the operations further include mapping the one ormore BIM objects to points within a building automation system (BAS)associated with the building, and the points within the BAS correspondto the one or more building assets.

In some embodiments, the BIM data is received as one or more industryfoundation class (IFC) files.

In some embodiments, the semantic description describes the one or moreBIM objects and the one or more object relationships in a naturallanguage.

In some embodiments, applying the semantic description includes mappingthe one or more BIM objects and the one or more object relationships toa Brick schema.

In some embodiments, the one or more building assets include buildingequipment and spaces within the building.

In some embodiments, the operations further including generating a 3Dmodel of the building based on the BIM data, the 3D model including thesemantic description of the one or more BIM objects and the one or moreobject relationships.

In some embodiments, the hierarchy structure defines physical or spatialrelationships between the one or more BIM objects.

In some embodiments, generating the hierarchy structure includesidentifying hierarchy levels associated with the one or more BIM objectsbased on the one or more object relationships and ordering the one ormore BIM objects based in an associated hierarchy level.

Yet another implementation of the present disclosure is a method. Themethod includes obtaining, by one or processors, building informationmodel (BIM) data associated with a building including one or morebuilding assets; identifying, by the one or more processors, one or moreBIM objects within the BIM, the one or more BIM objects associated withthe one or more building assets; identifying, by the one or moreprocessors, one or more object relationships between the one or more BIMobjects; applying, by the one or more processors, semantic descriptionsthe one or more BIM objects and the one or more object relationships;and generating, by the one or more processors, a hierarchy structure forthe building based on the one of more BIM objects and the one or moreobject relationships, the hierarchy structure including the semanticdescription of each of the one or more BIM objects and the one or moreobject relationships.

In some embodiments, the method further includes extracting metadatafrom the BIM data, and the metadata is used to identify the one or moreBIM objects and the one or more object relationships.

In some embodiments, the method further includes mapping the one or moreBIM objects to points within a building automation system (BAS)associated with the building, and the points within the BAS correspondsto one of the one or more building assets.

In some embodiments, the BIM data is obtained as one or more industryfoundation class (IFC) files.

In some embodiments, the semantic description describes the one or moreBIM objects and the one or more object relationships in a naturallanguage.

In some embodiments, applying the semantic description includes mappingthe one or more BIM objects and the one or more object relationships toa Brick schema.

In some embodiments, the one or more building assets include buildingequipment and spaces.

In some embodiments, the method further includes generating a 3D modelof the building based on the BIM data, the 3D model includes thesemantic descriptions of the one or more BIM objects and the one or moreobject relationships.

In some embodiments, the hierarchy structure defines physical or spatialrelationships between the one or more BIM objects.

Yet another implementation of the present disclosure is non-transitorycomputer readable media. The non-transitory computer readable media hasinstructions stored thereon that, when executed by one or moreprocessors, cause the one or more processors to perform operationsincluding obtaining building information model (BIM) data associatedwith a building including one or more building assets; extractingmetadata from the BIM data to identify one or more BIM objectsassociated with the one or more building assets and relationshipsbetween the one or more BIM objects; applying a semantic descriptionschema to the extracted metadata, the semantic description schemadefining the one or more BIM objects and relationships in a naturallanguage; generating a hierarchy structure for the building based on theone of more BIM objects and the relationships, the hierarchy structureincluding the semantic description of the one or more BIM objects andthe one or more object relationships; and presenting, via a userinterface of a user device, the hierarchy structure.

Yet another implementation of the present disclosure is a system. Thesystem includes one or more memory devices having instructions storedthereon that, when executed by one or more processors, cause the one ormore processors to perform operations including obtaining a firstbuilding information model (BIM) file associated with a building, thebuilding including one or more building assets; obtaining a second BIMfile associated with the building; linking data from the first BIM fileto data from the second BIM file; and concurrently presenting, via asingle user interface, a representation of at least a portion of thefirst BIM file and the second BIM file based on the linked data.

In some embodiments, the operations further include applying a semanticdescription schema to the first BIM file and the second BIM file.

In some embodiments, the semantic description schema is Brick schema.

In some embodiments, the operations include receiving a first user inputidentifying one of the first BIM file or the second BIM file as a basefile herein data from the first BIM file or the second BIM file notidentified as the base file is linked to the base file.

In some embodiments, concurrently presenting the representation includesgenerating a 3-dimensional (3D) model of the building based on thelinked data.

In some embodiments, the operations further include generating ahierarchy structure for the first BIM file and the second BIM file, andthe hierarchy structure defines physical relationships between buildingassets represented within the first BIM file and the second BIM file.

In some embodiments, the one or more building assets include at leastone of building equipment or building spaces.

In some embodiments, the first BIM file includes a first set of BIMobjects and the second BIM file includes a second set of BIM objects,the operations further including mapping the first set of BIM objectsand the second set of BIM objects to a plurality of points within abuilding automation system (BAS), the plurality of points correspondingto one of the one or more building assets.

In some embodiments, the one or more building assets include at leastone of building equipment or building spaces.

Yet another implementation of the present disclosure is a method. Themethod includes receiving, by one or more processors, a first buildinginformation model (BIM) file associated with a building, the buildingincluding one or more building assets; obtaining, by the one or moreprocessors, a second BIM file associated with the building; linking, bythe one or more processors, data from the first BIM file to data fromthe second BIM file; and concurrently presenting, by the one or moreprocessors via a single user interface, a representation of at least aportion of the first BIM file and the second BIM file based on thelinked data.

In some embodiments, the method further includes applying a semanticdescription schema to the first BIM file and the second BIM file.

In some embodiments, the semantic description schema is Brick schema.

In some embodiments, the method further includes receiving a first userinput identifying one of the first BIM file or the second BIM file as abase file, and data from the first BIM file or the second BIM file notidentified as the base file is linked to the base file.

In some embodiments, concurrently presenting the representation includesgenerating a 3-dimensional (3D) model of the building based on thelinked data.

In some embodiments, the method further includes generating a hierarchystructure for the first BIM file and the second BIM file, and thehierarchy structure defines physical relationships between buildingassets represented within the first BIM file and the second BIM file.

In some embodiments, the one or more building assets include at leastone of building equipment or building spaces.

In some embodiments, the first BIM file includes a first set of BIMobjects and the second BIM file includes a second set of BIM objects,the operations further includes mapping the first set of BIM objects andthe second set of BIM objects to a plurality of points within a buildingautomation system (BAS), the plurality of points corresponding to one ofthe one or more building assets.

In some embodiments, the one or more building assets include at leastone of building equipment and building spaces.

Yet another implementation of the present disclosure is a method. Themethod includes receiving, by one or more processors, two or morebuilding information model (BIM) files corresponding to a buildingincluding one or more building assets; receiving, by the one or moreprocessors, a first user input selecting one of the two or more BIMfiles as a base file; linking, by the one or more processors, data fromthe base file to any of the two or more BIM files not identified as thebase file; and generating, by the one or more processors, a3-dimensional (3D) building model based on the linked data, wherein the3D building model includes at least a portion of each of the two or moreBIM files; and presenting, via a single user interface, the 3D buildingmodel.

In some embodiments, the method further includes applying a semanticdescription schema to each of the two or more BIM files.

Yet another implementation of the present disclosure is a method foridentifying faults within a building including one or more buildingassets. The method includes receiving a building information model (BIM)associated with the building identifying a first asset of the one ormore building assets, determining at least one of an input asset or anoutput asset of the first asset within the BIM, identifying a faultcondition for the first asset, and presenting, via a user interface, arepresentation of at least a portion of the BIM comprising the firstasset and the at least one of the input asset or the output asset. Thefirst asset is represented within the BIM, and the input asset affectsthe first asset and the output asset is affected by the first asset. Thefirst asset indicates the fault condition within the representation anda visual appearance of the at least one of the input asset or the outputasset within the representation changes responsive to a selection of thefirst asset.

In some embodiments, the visual appearance of the at least one of theinput asset or the output asset changes by altering a style or a colorof the visual appearance to distinguish the at least one of the inputasset or the output asset.

Yet another implementation of the present disclosure is a method thatincludes receiving a building information model (BIM) associated with abuilding that a plurality of spaces and a plurality of assets, receivingat least one of thermal data or energy consumption data associated withthe plurality of spaces and assets, generating at least one of aggregatethermal data or aggregate energy consumption data, mapping the at leastone of aggregate thermal data or aggregate energy consumption data tothe plurality of BIM objects, and presenting, via a user interface, theBIM, where the at least one of aggregate thermal or aggregate energyconsumption data is presented within the BIM. The BIM includes aplurality of BIM objects each associated with one of the plurality ofspaces and one of the plurality of assets. In some embodiments, theaggregate thermal data indicating an average temperature for one or moreof the plurality of spaces and the aggregated energy consumption dataindicating a total energy consumption for one or more of the pluralityof assets.

Yet another implementation of the present disclosure is a systemincluding one or more processing circuits configured to receive a firstbuilding information model (BIM) associated with a building comprisingone or more building assets, identify one or more BIM objects within theBIM and one or more object relationships between the one or more BIMobjects, generate a configuration for the first BIM based on the one ormore BIM objects and the one or more object relationships, store, in amemory, the first BIM and the configuration for the first BIM, receive,via a user interface, a second BIM associated with the building, andapply the configuration for the first BIM to the second BIM. Generally,each the one or more BIM objects correspond to one of the one or morebuilding assets and the configuration includes at least one ofparameters, thermal data, or energy consumption data for the one or moreassets associated with the one of more BIM objects.

Yet another implementation of the present disclosure is a methodincluding receiving a building information model (BIM) associated with abuilding including one or more assets, receiving at least one of faultdata or diagnostic data associated with the one or more assets,presenting, via a user interface, the BIM, receiving, via the userinterface, a selection of a first BIM object associated with one of theone or more assets, and presenting, via the user interface, at least oneof the fault data or the diagnostic data associated with the first BIMobject responsive to the selection of the first BIM object, where the atleast one of the fault data or the diagnostic data is presented as anoverlay to the first BIM object. In some embodiments, the one or moreassets are represented within the BIM as BIM objects.

Yet another implementation of the present disclosure is a methodincluding identifying a first set of object identifiers within ananalytics platform, identifying a second set of object identifierswithin a building information model (BIM) associated with a buildingthat includes one or more building assets, generating an interface thatlinks the first set of object identifiers with the second set of objectidentifiers, and generating a 3D model of the BIM. In some embodiments,the analytics platform includes analytical data associated with one ormore assets managed by the analytics platform and the first set ofobject identifiers are associated with the one or more assets. In someembodiments, the second set of object identifiers are associated withthe one or more building assets. In some embodiments, the analyticaldata associated with the first set of object identifiers is presentedwithin the 3D model.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects, aspects, features, and advantages of the disclosurewill become more apparent and better understood by referring to thedetailed description taken in conjunction with the accompanyingdrawings, in which like reference characters identify correspondingelements throughout. In the drawings, like reference numbers generallyindicate identical, functionally similar, and/or structurally similarelements.

FIG. 1 is a drawing of a building equipped with a HVAC system, accordingto some embodiments.

FIG. 2 is a block diagram of a waterside system that may be used inconjunction with the building of FIG. 1, according to some embodiments.

FIG. 3 is a block diagram of an airside system that may be used inconjunction with the building of FIG. 1, according to some embodiments.

FIG. 4 is a block diagram of a building automation system (BAS) that maybe used to monitor and/or control the building of FIG. 1, according tosome embodiments.

FIG. 5 is a block diagram of a building information model (BIM)management system, according to some embodiments.

FIG. 6 is an example interface for uploading BIMs, according to someembodiments.

FIG. 7 is a diagram illustrating the translation of a BIM to a semanticdescription schema, according to some embodiments.

FIG. 8 is a diagram of a data structure that illustrates the Brickschema applied to an example BIM, according to some embodiments.

FIG. 9 is a diagram illustrating the generation of a hierarchystructure, according to some embodiments.

FIG. 10 is an example interface for redefining assets within thehierarchy structure, according to some embodiments.

FIG. 11 is a flow diagram of a process for automatically configuring aBIM and generating a hierarchy structure, according to some embodiments.

FIG. 12 is a flow diagram of a process for linking a plurality BIMs,according to some embodiments.

FIG. 13 is a flow diagram of a process for generating a site portfoliofrom a plurality of linked BIMs, according to some embodiments.

FIG. 14 is an example interface for mapping a plurality of BIMs,according to some embodiments.

FIGS. 15 and 16 are example interfaces for integrating BAS pointsassociated with spaces of the site or building with a BIM, according tosome embodiments.

FIG. 17 is a flow diagram of a process for backing-up and restoring aBIM configuration, according to some embodiments.

FIG. 18 is an example interface for performing the backup and restorefunctionality of FIG. 17, according to some embodiments.

FIG. 19 is an example interface of a BIM viewer that can concurrentlypresent multiple BIMs as 3D models, according to some embodiments.

FIG. 20 is an example interface of filtering within the BIM viewer,according to some embodiments.

FIGS. 21A-21C are example navigation interfaces that may be presentedwithin the BIM viewer, according to various embodiments.

FIG. 22 is an example interface illustrating a first person perspectivewithin a 3D building model, according to some embodiments.

FIG. 23 is an example interface of a zone heat map that presents thermaldata for particular spaces or zones within a 3D building model,according to some embodiments.

FIG. 24 is an example interface for configuring the zone heat map ofFIG. 23, according to some embodiments.

FIGS. 25 and 26 are example interfaces that present thermal data andenergy consumption data within a 3D building model, according to someembodiments.

FIG. 27 is an example interface that shows alarm data associated with abuilding asset, according to some embodiments.

FIG. 28 is a process for configuring fault tracer logic, according tosome embodiments.

FIG. 29 is an example interface that shows fault tracer logic within a3D model, according to some embodiments.

FIG. 30 is an example interface that presents object relationshipswithin a 3D model viewer, according to some embodiments.

FIGS. 31 and 32 are example interfaces for viewing service informationwithin a 3D model viewer, according to various embodiments.

FIG. 33 is an example interface that presents diagnostic data as anoverlay to a 3D model, according to some embodiments.

DETAILED DESCRIPTION

Referring generally to the FIGURES, a building automation system (BAS)with a building information model (BIM) management system is shown,according to some embodiments. A BAS is, in general, a system of devicesconfigured to control, monitor, and manage equipment in or around abuilding or building area. A BAS can include, for example, a HVACsystem, a security system, a lighting system, a fire safety system, anyother system that is capable of managing building functions or devices,or any combination thereof. The BIM management system may operate toreceive and configure BIMs, and may generate 3D graphical models of afacility or building represented by the BIMs.

In general, a BIM represents physical and/or functional characteristicsof a building. For example, a BIM may represent structuralcharacteristics of the building such as walls, floors, ceilings, doors,windows, etc., and/or subsystems of the building such as electrical,mechanical, HVAC, or other subsystems. In some embodiments, a BIM mayrepresent a plurality of physical building assets including spacesand/or equipment of a building represented by the BIM. In someembodiments, a BIM is a 3D graphical model of the building or BIM datamay be used to generate a 3D graphical model. A BIM may be used by anyof a plurality of entities that provide building-related services.

In some embodiments, a BIM represents building components as objects(e.g., software objects). For example, a BIM may include a plurality ofobjects that represent physical components within the building as wellas building spaces. Each object may include a collection of attributesthat define the physical geometry of the object, the type of object,and/or other properties of the object. For example, objects representingbuilding spaces may define the size and location of the building space.Objects representing physical components may define the geometry of thephysical component, the type of component (e.g., lighting fixture, airhandling unit, wall, etc.), the location of the physical component, amaterial from which the physical component is constructed, and/or otherattributes of the physical component.

The systems and methods described herein may be used to automaticallyconfigure a BIM for integration with a BAS. Advantageously, the systemsand methods provided by the present disclosure may increase theease-of-use and efficiency of a BIM configuration process. Such systemsand methods may also describe an improved BIM viewer with increasedusability and functionality for a wide range of users. Additionalfeatures and advantages of the present disclosure are described ingreater detail below.

Building with Building Systems

Referring now to FIGS. 1-4, an exemplary building automation system(BAS) and HVAC system in which the systems and methods of the presentdisclosure can be implemented are shown, according to some embodiments.Referring particularly to FIG. 1, a perspective view of a building 10 isshown. Building 10 is served by a BAS. A BAS is, in general, a system ofdevices configured to control, monitor, and manage equipment in oraround a building or building area. A BAS can include, for example, aHVAC system, a security system, a lighting system, a fire safety system,any other system that is capable of managing building functions ordevices, or any combination thereof.

The BAS that serves building 10 includes an HVAC system 100. HVAC system100 can include a plurality of HVAC devices (e.g., heaters, chillers,air handling units, pumps, fans, thermal energy storage, etc.)configured to provide heating, cooling, ventilation, or other servicesfor building 10. For example, HVAC system 100 is shown to include awaterside system 120 and an airside system 130. Waterside system 120 canprovide a heated or chilled fluid to an air handling unit of airsidesystem 130. Airside system 130 can use the heated or chilled fluid toheat or cool an airflow provided to building 10. An exemplary watersidesystem and airside system which can be used in HVAC system 100 aredescribed in greater detail with reference to FIGS. 2-3.

HVAC system 100 is shown to include a chiller 102, a boiler 104, and arooftop air handling unit (AHU) 106. Waterside system 120 can use boiler104 and chiller 102 to heat or cool a working fluid (e.g., water,glycol, etc.) and can circulate the working fluid to AHU 106. In variousembodiments, the HVAC devices of waterside system 120 can be located inor around building 10 (as shown in FIG. 1) or at an offsite locationsuch as a central plant (e.g., a chiller plant, a steam plant, a heatplant, etc.). The working fluid can be heated in boiler 104 or cooled inchiller 102, depending on whether heating or cooling is required inbuilding 10. Boiler 104 can add heat to the circulated fluid, forexample, by burning a combustible material (e.g., natural gas) or usingan electric heating element. Chiller 102 can place the circulated fluidin a heat exchange relationship with another fluid (e.g., a refrigerant)in a heat exchanger (e.g., an evaporator) to absorb heat from thecirculated fluid. The working fluid from chiller 102 and/or boiler 104can be transported to AHU 106 via piping 108.

AHU 106 can place the working fluid in a heat exchange relationship withan airflow passing through AHU 106 (e.g., via one or more stages ofcooling coils and/or heating coils). The airflow can be, for example,outside air, return air from within building 10, or a combination ofboth. AHU 106 can transfer heat between the airflow and the workingfluid to provide heating or cooling for the airflow. For example, AHU106 can include one or more fans or blowers configured to pass theairflow over or through a heat exchanger containing the working fluid.The working fluid can then return to chiller 102 or boiler 104 viapiping 110.

Airside system 130 can deliver the airflow supplied by AHU 106 (i.e.,the supply airflow) to building 10 via air supply ducts 112 and canprovide return air from building 10 to AHU 106 via air return ducts 114.In some embodiments, airside system 130 includes multiple variable airvolume (VAV) units 116. For example, airside system 130 is shown toinclude a separate VAV unit 116 on each floor or zone of building 10.VAV units 116 can include dampers or other flow control elements thatcan be operated to control an amount of the supply airflow provided toindividual zones of building 10. In other embodiments, airside system130 delivers the supply airflow into one or more zones of building 10(e.g., via supply ducts 112) without using intermediate VAV units 116 orother flow control elements. AHU 106 can include various sensors (e.g.,temperature sensors, pressure sensors, etc.) configured to measureattributes of the supply airflow. AHU 106 can receive input from sensorslocated within AHU 106 and/or within the building zone and can adjustthe flow rate, temperature, or other attributes of the supply airflowthrough AHU 106 to achieve setpoint conditions for the building zone.

In FIG. 2, waterside system 200 is shown as a central plant having aplurality of subplants 202-212. Subplants 202-212 are shown to include aheater subplant 202, a heat recovery chiller subplant 204, a chillersubplant 206, a cooling tower subplant 208, a hot thermal energy storage(TES) subplant 210, and a cold thermal energy storage (TES) subplant212. Subplants 202-212 consume resources (e.g., water, natural gas,electricity, etc.) from utilities to serve the thermal energy loads(e.g., hot water, cold water, heating, cooling, etc.) of a building orcampus. For example, heater subplant 202 may be configured to heat waterin a hot water loop 214 that circulates the hot water between heatersubplant 202 and building 10. Chiller subplant 206 may be configured tochill water in a cold water loop 216 that circulates the cold waterbetween chiller subplant 206 building 10. Heat recovery chiller subplant204 may be configured to transfer heat from cold water loop 216 to hotwater loop 214 to provide additional heating for the hot water andadditional cooling for the cold water. Condenser water loop 218 mayabsorb heat from the cold water in chiller subplant 206 and reject theabsorbed heat in cooling tower subplant 208 or transfer the absorbedheat to hot water loop 214. Hot TES subplant 210 and cold TES subplant212 may store hot and cold thermal energy, respectively, for subsequentuse.

Hot water loop 214 and cold water loop 216 may deliver the heated and/orchilled water to air handlers located on the rooftop of building 10(e.g., AHU 106) or to individual floors or zones of building 10 (e.g.,VAV units 116). The air handlers push air past heat exchangers (e.g.,heating coils or cooling coils) through which the water flows to provideheating or cooling for the air. The heated or cooled air may bedelivered to individual zones of building 10 to serve the thermal energyloads of building 10. The water then returns to subplants 202-212 toreceive further heating or cooling.

Although subplants 202-212 are shown and described as heating andcooling water for circulation to a building, it is understood that anyother type of working fluid (e.g., glycol, CO2, etc.) may be used inplace of or in addition to water to serve the thermal energy loads. Inother embodiments, subplants 202-212 may provide heating and/or coolingdirectly to the building or campus without requiring an intermediateheat transfer fluid. These and other variations to waterside system 200are within the teachings of the present invention.

Each of subplants 202-212 may include a variety of equipment configuredto facilitate the functions of the subplant. For example, heatersubplant 202 is shown to include a plurality of heating elements 220(e.g., boilers, electric heaters, etc.) configured to add heat to thehot water in hot water loop 214. Heater subplant 202 is also shown toinclude several pumps 222 and 224 configured to circulate the hot waterin hot water loop 214 and to control the flow rate of the hot waterthrough individual heating elements 220. Chiller subplant 206 is shownto include a plurality of chillers 232 configured to remove heat fromthe cold water in cold water loop 216. Chiller subplant 206 is alsoshown to include several pumps 234 and 236 configured to circulate thecold water in cold water loop 216 and to control the flow rate of thecold water through individual chillers 232.

Heat recovery chiller subplant 204 is shown to include a plurality ofheat recovery heat exchangers 226 (e.g., refrigeration circuits)configured to transfer heat from cold water loop 216 to hot water loop214. Heat recovery chiller subplant 204 is also shown to include severalpumps 228 and 230 configured to circulate the hot water and/or coldwater through heat recovery heat exchangers 226 and to control the flowrate of the water through individual heat recovery heat exchangers 226.Cooling tower subplant 208 is shown to include a plurality of coolingtowers 238 configured to remove heat from the condenser water incondenser water loop 218. Cooling tower subplant 208 is also shown toinclude several pumps 240 configured to circulate the condenser water incondenser water loop 218 and to control the flow rate of the condenserwater through individual cooling towers 238.

Hot TES subplant 210 is shown to include a hot TES tank 242 configuredto store the hot water for later use. Hot TES subplant 210 may alsoinclude one or more pumps or valves configured to control the flow rateof the hot water into or out of hot TES tank 242. Cold TES subplant 212is shown to include cold TES tanks 244 configured to store the coldwater for later use. Cold TES subplant 212 may also include one or morepumps or valves configured to control the flow rate of the cold waterinto or out of cold TES tanks 244.

In some embodiments, one or more of the pumps in waterside system 200(e.g., pumps 222, 224, 228, 230, 234, 236, and/or 240) or pipelines inwaterside system 200 include an isolation valve associated therewith.Isolation valves may be integrated with the pumps or positioned upstreamor downstream of the pumps to control the fluid flows in watersidesystem 200. In various embodiments, waterside system 200 may includemore, fewer, or different types of devices and/or subplants based on theparticular configuration of waterside system 200 and the types of loadsserved by waterside system 200.

Referring now to FIG. 3, a block diagram of an airside system 300 isshown, according to some embodiments. In various embodiments, airsidesystem 300 may supplement or replace airside system 130 in HVAC system100 or may be implemented separate from HVAC system 100. Whenimplemented in HVAC system 100, airside system 300 may include a subsetof the HVAC devices in HVAC system 100 (e.g., AHU 106, VAV units 116,ducts 112-114, fans, dampers, etc.) and may be located in or aroundbuilding 10. Airside system 300 may operate to heat or cool an airflowprovided to building 10 using a heated or chilled fluid provided bywaterside system 200.

In FIG. 3, airside system 300 is shown to include an economizer-type airhandling unit (AHU) 302. Economizer-type AHUs vary the amount of outsideair and return air used by the air handling unit for heating or cooling.For example, AHU 302 may receive return air 304 from building zone 306via return air duct 308 and may deliver supply air 310 to building zone306 via supply air duct 312. In some embodiments, AHU 302 is a rooftopunit located on the roof of building 10 (e.g., AHU 106 as shown inFIG. 1) or otherwise positioned to receive both return air 304 andoutside air 314. AHU 302 may be configured to operate exhaust air damper316, mixing damper 318, and outside air damper 320 to control an amountof outside air 314 and return air 304 that combine to form supply air310. Any return air 304 that does not pass through mixing damper 318 maybe exhausted from AHU 302 through exhaust damper 316 as exhaust air 322.

Each of dampers 316-320 may be operated by an actuator. For example,exhaust air damper 316 may be operated by actuator 324, mixing damper318 may be operated by actuator 326, and outside air damper 320 may beoperated by actuator 328. Actuators 324-328 may communicate with an AHUcontroller 330 via a communications link 332. Actuators 324-328 mayreceive control signals from AHU controller 330 and may provide feedbacksignals to AHU controller 330. Feedback signals may include, forexample, an indication of a current actuator or damper position, anamount of torque or force exerted by the actuator, diagnosticinformation (e.g., results of diagnostic tests performed by actuators324-328), status information, commissioning information, configurationsettings, calibration data, and/or other types of information or datathat may be collected, stored, or used by actuators 324-328. AHUcontroller 330 may be an economizer controller configured to use one ormore control algorithms (e.g., state-based algorithms, extremum seekingcontrol (ESC) algorithms, proportional-integral (PI) control algorithms,proportional-integral-derivative (PID) control algorithms, modelpredictive control (MPC) algorithms, feedback control algorithms, etc.)to control actuators 324-328.

Still referring to FIG. 3, AHU 302 is shown to include a cooling coil334, a heating coil 336, and a fan 338 positioned within supply air duct312. Fan 338 may be configured to force supply air 310 through coolingcoil 334 and/or heating coil 336 and provide supply air 310 to buildingzone 306. AHU controller 330 may communicate with fan 338 viacommunications link 340 to control a flow rate of supply air 310. Insome embodiments, AHU controller 330 controls an amount of heating orcooling applied to supply air 310 by modulating a speed of fan 338.

Cooling coil 334 may receive a chilled fluid from waterside system 200(e.g., from cold water loop 216) via piping 342 and may return thechilled fluid to waterside system 200 via piping 344. Valve 346 may bepositioned along piping 342 or piping 344 to control a flow rate of thechilled fluid through cooling coil 334. In some embodiments, coolingcoil 334 includes multiple stages of cooling coils that can beindependently activated and deactivated (e.g., by AHU controller 330, byBAS controller 366, etc.) to modulate an amount of cooling applied tosupply air 310.

Heating coil 336 may receive a heated fluid from waterside system 200(e.g., from hot water loop 214) via piping 348 and may return the heatedfluid to waterside system 200 via piping 350. Valve 352 may bepositioned along piping 348 or piping 350 to control a flow rate of theheated fluid through heating coil 336. In some embodiments, heating coil336 includes multiple stages of heating coils that can be independentlyactivated and deactivated (e.g., by AHU controller 330, by BAScontroller 366, etc.) to modulate an amount of heating applied to supplyair 310.

Each of valves 346 and 352 may be controlled by an actuator. Forexample, valve 346 may be controlled by actuator 354 and valve 352 maybe controlled by actuator 356. Actuators 354-356 may communicate withAHU controller 330 via communications links 358-360. Actuators 354-356may receive control signals from AHU controller 330 and may providefeedback signals to controller 330. In some embodiments, AHU controller330 receives a measurement of the supply air temperature from atemperature sensor 362 positioned in supply air duct 312 (e.g.,downstream of cooling coil 334 and/or heating coil 336). AHU controller330 may also receive a measurement of the temperature of building zone306 from a temperature sensor 364 located in building zone 306.

In some embodiments, AHU controller 330 operates valves 346 and 352 viaactuators 354-356 to modulate an amount of heating or cooling providedto supply air 310 (e.g., to achieve a setpoint temperature for supplyair 310 or to maintain the temperature of supply air 310 within asetpoint temperature range). The positions of valves 346 and 352 affectthe amount of heating or cooling provided to supply air 310 by coolingcoil 334 or heating coil 336 and may correlate with the amount of energyconsumed to achieve a desired supply air temperature. AHU controller 330may control the temperature of supply air 310 and/or building zone 306by activating or deactivating coils 334-336, adjusting a speed of fan338, or a combination of both.

Still referring to FIG. 3, airside system 300 is shown to include abuilding automation system (BAS) controller 366 and a client device 368.BAS controller 366 may include one or more computer systems (e.g.,servers, supervisory controllers, subsystem controllers, etc.) thatserve as system level controllers, application or data servers, headnodes, or master controllers for airside system 300, waterside system200, HVAC system 100, and/or other controllable systems that servebuilding 10. BAS controller 366 may communicate with multiple downstreambuilding systems or subsystems (e.g., HVAC system 100, a securitysystem, a lighting system, waterside system 200, etc.) via acommunications link 370 according to like or disparate protocols (e.g.,LON, BACnet, etc.). In various embodiments, AHU controller 330 and BAScontroller 366 may be separate (as shown in FIG. 3) or integrated. In anintegrated implementation, AHU controller 330 may be a software moduleconfigured for execution by a processor of BAS controller 366.

In some embodiments, AHU controller 330 receives information from BAScontroller 366 (e.g., commands, setpoints, operating boundaries, etc.)and provides information to BAS controller 366 (e.g., temperaturemeasurements, valve or actuator positions, operating statuses,diagnostics, etc.). For example, AHU controller 330 may provide BAScontroller 366 with temperature measurements from temperature sensors362-364, equipment on/off states, equipment operating capacities, and/orany other information that can be used by BAS controller 366 to monitoror control a variable state or condition within building zone 306.

Client device 368 may include one or more human-machine interfaces orclient interfaces (e.g., graphical user interfaces, reportinginterfaces, text-based computer interfaces, client-facing web services,web servers that provide pages to web clients, etc.) for controlling,viewing, or otherwise interacting with HVAC system 100, its subsystems,and/or devices. Client device 368 may be a computer workstation, aclient terminal, a remote or local interface, or any other type of userinterface device. Client device 368 may be a stationary terminal or amobile device. For example, client device 368 may be a desktop computer,a computer server with a user interface, a laptop computer, a tablet, asmartphone, a PDA, or any other type of mobile or non-mobile device.Client device 368 may communicate with BAS controller 366 and/or AHUcontroller 330 via communications link 372.

Referring now to FIG. 4, a block diagram of a building automation system(BAS) 400 is shown, according to some embodiments. BAS 400 may beimplemented in building 10 to automatically monitor and control variousbuilding functions. BAS 400 is shown to include BAS controller 366 and aplurality of building subsystems 428. Building subsystems 428 are shownto include a building electrical subsystem 434, an informationcommunication technology (ICT) subsystem 436, a security subsystem 438,a HVAC subsystem 440, a lighting subsystem 442, a lift/escalatorssubsystem 432, and a fire safety subsystem 430. In various embodiments,building subsystems 428 can include fewer, additional, or alternativesubsystems. For example, building subsystems 428 may also oralternatively include a refrigeration subsystem, an advertising orsignage subsystem, a cooking subsystem, a vending subsystem, a printeror copy service subsystem, or any other type of building subsystem thatuses controllable equipment and/or sensors to monitor or controlbuilding 10. In some embodiments, building subsystems 428 includewaterside system 200 and/or airside system 300, as described withreference to FIGS. 2-3.

Each of building subsystems 428 may include any number of devices,controllers, and connections for completing its individual functions andcontrol activities. HVAC subsystem 440 may include many of the samecomponents as HVAC system 100, as described with reference to FIGS. 1-3.For example, HVAC subsystem 440 may include a chiller, a boiler, anynumber of air handling units, economizers, field controllers,supervisory controllers, actuators, temperature sensors, and otherdevices for controlling the temperature, humidity, airflow, or othervariable conditions within building 10. Lighting subsystem 442 mayinclude any number of light fixtures, ballasts, lighting sensors,dimmers, or other devices configured to controllably adjust the amountof light provided to a building space. Security subsystem 438 mayinclude occupancy sensors, video surveillance cameras, digital videorecorders, video processing servers, intrusion detection devices, accesscontrol devices and servers, or other security-related devices.

Still referring to FIG. 4, BAS controller 366 is shown to include acommunications interface 407 and a BAS interface 409. Interface 407 mayfacilitate communications between BAS controller 366 and externalapplications (e.g., monitoring and reporting applications 422,enterprise control applications 426, remote systems and applications444, applications residing on client devices 448, etc.) for allowinguser control, monitoring, and adjustment to BAS controller 366 and/orsubsystems 428. Interface 407 may also facilitate communications betweenBAS controller 366 and client devices 448. BAS interface 409 mayfacilitate communications between BAS controller 366 and buildingsubsystems 428 (e.g., HVAC, lighting security, lifts, powerdistribution, business, etc.).

Interfaces 407, 409 can be or include wired or wireless communicationsinterfaces (e.g., jacks, antennas, transmitters, receivers,transceivers, wire terminals, etc.) for conducting data communicationswith building subsystems 428 or other external systems or devices. Invarious embodiments, communications via interfaces 407, 409 may bedirect (e.g., local wired or wireless communications) or via acommunications network 446 (e.g., a WAN, the Internet, a cellularnetwork, etc.). For example, interfaces 407, 409 can include an Ethernetcard and port for sending and receiving data via an Ethernet-basedcommunications link or network. In another example, interfaces 407, 409can include a WiFi transceiver for communicating via a wirelesscommunications network. In another example, one or both of interfaces407, 409 may include cellular or mobile phone communicationstransceivers. In one embodiment, communications interface 407 is a powerline communications interface and BAS interface 409 is an Ethernetinterface. In other embodiments, both communications interface 407 andBAS interface 409 are Ethernet interfaces or are the same Ethernetinterface.

Still referring to FIG. 4, BAS controller 366 is shown to include aprocessing circuit 404 including a processor 406 and memory 408.Processing circuit 404 may be communicably connected to BAS interface409 and/or communications interface 407 such that processing circuit 404and the various components thereof can send and receive data viainterfaces 407, 409. Processor 406 can be implemented as a generalpurpose processor, an application specific integrated circuit (ASIC),one or more field programmable gate arrays (FPGAs), a group ofprocessing components, or other suitable electronic processingcomponents.

Memory 408 (e.g., memory, memory unit, storage device, etc.) may includeone or more devices (e.g., RAM, ROM, Flash memory, hard disk storage,etc.) for storing data and/or computer code for completing orfacilitating the various processes, layers and modules described in thepresent application. Memory 408 may be or include volatile memory ornon-volatile memory. Memory 408 may include database components, objectcode components, script components, or any other type of informationstructure for supporting the various activities and informationstructures described in the present application. According to anexemplary embodiment, memory 408 is communicably connected to processor406 via processing circuit 404 and includes computer code for executing(e.g., by processing circuit 404 and/or processor 406) one or moreprocesses described herein.

In some embodiments, BAS controller 366 is implemented within a singlecomputer (e.g., one server, one housing, etc.). In various otherembodiments BAS controller 366 may be distributed across multipleservers or computers (e.g., that can exist in distributed locations).Further, while FIG. 4 shows applications 422 and 426 as existing outsideof BAS controller 366, in some embodiments, applications 422 and 426 maybe hosted within BAS controller 366 (e.g., within memory 408).

Still referring to FIG. 4, memory 408 is shown to include an enterpriseintegration layer 410, an automated measurement and validation (AM&V)layer 412, a demand response (DR) layer 414, a fault detection anddiagnostics (FDD) layer 416, an integrated control layer 418, and abuilding subsystem integration later 420. Layers 410-420 may beconfigured to receive inputs from building subsystems 428 and other datasources, determine optimal control actions for building subsystems 428based on the inputs, generate control signals based on the optimalcontrol actions, and provide the generated control signals to buildingsubsystems 428. The following paragraphs describe some of the generalfunctions performed by each of layers 410-420 in BAS 400.

Enterprise integration layer 410 may be configured to serve clients orlocal applications with information and services to support a variety ofenterprise-level applications. For example, enterprise controlapplications 426 may be configured to provide subsystem-spanning controlto a graphical user interface (GUI) or to any number of enterprise-levelbusiness applications (e.g., accounting systems, user identificationsystems, etc.). Enterprise control applications 426 may also oralternatively be configured to provide configuration GUIs forconfiguring BAS controller 366. In yet other embodiments, enterprisecontrol applications 426 can work with layers 410-420 to optimizebuilding performance (e.g., efficiency, energy use, comfort, or safety)based on inputs received at interface 407 and/or BAS interface 409.

Building subsystem integration layer 420 may be configured to managecommunications between BAS controller 366 and building subsystems 428.For example, building subsystem integration layer 420 may receive sensordata and input signals from building subsystems 428 and provide outputdata and control signals to building subsystems 428. Building subsystemintegration layer 420 may also be configured to manage communicationsbetween building subsystems 428. Building subsystem integration layer420 translate communications (e.g., sensor data, input signals, outputsignals, etc.) across a plurality of multi-vendor/multi-protocolsystems.

Demand response layer 414 may be configured to optimize resource usage(e.g., electricity use, natural gas use, water use, etc.) and/or themonetary cost of such resource usage in response to satisfy the demandof building 10. The optimization may be based on time-of-use prices,curtailment signals, energy availability, or other data received fromutility providers, distributed energy generation systems 424, fromenergy storage 427 (e.g., hot TES 242, cold TES 244, etc.), or fromother sources. Demand response layer 414 may receive inputs from otherlayers of BAS controller 366 (e.g., building subsystem integration layer420, integrated control layer 418, etc.). The inputs received from otherlayers may include environmental or sensor inputs such as temperature,carbon dioxide levels, relative humidity levels, air quality sensoroutputs, occupancy sensor outputs, room schedules, and the like. Theinputs may also include inputs such as electrical use (e.g., expressedin kWh), thermal load measurements, pricing information, projectedpricing, smoothed pricing, curtailment signals from utilities, and thelike.

According to an exemplary embodiment, demand response layer 414 includescontrol logic for responding to the data and signals it receives. Theseresponses can include communicating with the control algorithms inintegrated control layer 418, changing control strategies, changingsetpoints, or activating/deactivating building equipment or subsystemsin a controlled manner. Demand response layer 414 may also includecontrol logic configured to determine when to utilize stored energy. Forexample, demand response layer 414 may determine to begin using energyfrom energy storage 427 just prior to the beginning of a peak use hour.

In some embodiments, demand response layer 414 includes a control moduleconfigured to actively initiate control actions (e.g., automaticallychanging setpoints) which minimize energy costs based on one or moreinputs representative of or based on demand (e.g., price, a curtailmentsignal, a demand level, etc.). In some embodiments, demand responselayer 414 uses equipment models to determine an optimal set of controlactions. The equipment models may include, for example, thermodynamicmodels describing the inputs, outputs, and/or functions performed byvarious sets of building equipment. Equipment models may representcollections of building equipment (e.g., subplants, chiller arrays,etc.) or individual devices (e.g., individual chillers, heaters, pumps,etc.).

Demand response layer 414 may further include or draw upon one or moredemand response policy definitions (e.g., databases, XML, files, etc.).The policy definitions may be edited or adjusted by a user (e.g., via agraphical user interface) so that the control actions initiated inresponse to demand inputs may be tailored for the user's application,desired comfort level, particular building equipment, or based on otherconcerns. For example, the demand response policy definitions canspecify which equipment may be turned on or off in response toparticular demand inputs, how long a system or piece of equipment shouldbe turned off, what setpoints can be changed, what the allowable setpoint adjustment range is, how long to hold a high demand setpointbefore returning to a normally scheduled setpoint, how close to approachcapacity limits, which equipment modes to utilize, the energy transferrates (e.g., the maximum rate, an alarm rate, other rate boundaryinformation, etc.) into and out of energy storage devices (e.g., thermalstorage tanks, battery banks, etc.), and when to dispatch on-sitegeneration of energy (e.g., via fuel cells, a motor generator set,etc.).

Integrated control layer 418 may be configured to use the data input oroutput of building subsystem integration layer 420 and/or demandresponse later 414 to make control decisions. Due to the subsystemintegration provided by building subsystem integration layer 420,integrated control layer 418 can integrate control activities of thesubsystems 428 such that the subsystems 428 behave as a singleintegrated super-system. In an exemplary embodiment, integrated controllayer 418 includes control logic that uses inputs and outputs from aplurality of building subsystems to provide greater comfort and energysavings relative to the comfort and energy savings that separatesubsystems could provide alone. For example, integrated control layer418 may be configured to use an input from a first subsystem to make anenergy-saving control decision for a second subsystem. Results of thesedecisions can be communicated back to building subsystem integrationlayer 420.

Integrated control layer 418 is shown to be logically below demandresponse layer 414. Integrated control layer 418 may be configured toenhance the effectiveness of demand response layer 414 by enablingbuilding subsystems 428 and their respective control loops to becontrolled in coordination with demand response layer 414. Thisconfiguration may advantageously reduce disruptive demand responsebehavior relative to conventional systems. For example, integratedcontrol layer 418 may be configured to assure that a demandresponse-driven upward adjustment to the setpoint for chilled watertemperature (or another component that directly or indirectly affectstemperature) does not result in an increase in fan energy (or otherenergy used to cool a space) that would result in greater total buildingenergy use than was saved at the chiller.

Integrated control layer 418 may be configured to provide feedback todemand response layer 414 so that demand response layer 414 checks thatconstraints (e.g., temperature, lighting levels, etc.) are properlymaintained even while demanded load shedding is in progress. Theconstraints may also include setpoint or sensed boundaries relating tosafety, equipment operating limits and performance, comfort, fire codes,electrical codes, energy codes, and the like. Integrated control layer418 is also logically below fault detection and diagnostics layer 416and automated measurement and validation layer 412. Integrated controllayer 418 may be configured to provide calculated inputs (e.g.,aggregations) to these higher levels based on outputs from more than onebuilding subsystem.

Automated measurement and validation (AM&V) layer 412 may be configuredto verify that control strategies commanded by integrated control layer418 or demand response layer 414 are working properly (e.g., using dataaggregated by AM&V layer 412, integrated control layer 418, buildingsubsystem integration layer 420, FDD layer 416, or otherwise). Thecalculations made by AM&V layer 412 may be based on building systemenergy models and/or equipment models for individual BAS devices orsubsystems. For example, AM&V layer 412 may compare a model-predictedoutput with an actual output from building subsystems 428 to determinean accuracy of the model.

Fault detection and diagnostics (FDD) layer 416 may be configured toprovide on-going fault detection for building subsystems 428, buildingsubsystem devices (i.e., building equipment), and control algorithmsused by demand response layer 414 and integrated control layer 418. FDDlayer 416 may receive data inputs from integrated control layer 418,directly from one or more building subsystems or devices, or fromanother data source. FDD layer 416 may automatically diagnose andrespond to detected faults. The responses to detected or diagnosedfaults may include providing an alert message to a user, a maintenancescheduling system, or a control algorithm configured to attempt torepair the fault or to work-around the fault.

FDD layer 416 may be configured to output a specific identification ofthe faulty component or cause of the fault (e.g., loose damper linkage)using detailed subsystem inputs available at building subsystemintegration layer 420. In other exemplary embodiments, FDD layer 416 isconfigured to provide “fault” events to integrated control layer 418which executes control strategies and policies in response to thereceived fault events. According to an exemplary embodiment, FDD layer416 (or a policy executed by an integrated control engine or businessrules engine) may shut-down systems or direct control activities aroundfaulty devices or systems to reduce energy waste, extend equipment life,or assure proper control response.

FDD layer 416 may be configured to store or access a variety ofdifferent system data stores (or data points for live data). FDD layer416 may use some content of the data stores to identify faults at theequipment level (e.g., specific chiller, specific AHU, specific terminalunit, etc.) and other content to identify faults at component orsubsystem levels. For example, building subsystems 428 may generatetemporal (i.e., time-series) data indicating the performance of BAS 400and the various components thereof. The data generated by buildingsubsystems 428 may include measured or calculated values that exhibitstatistical characteristics and provide information about how thecorresponding system or process (e.g., a temperature control process, aflow control process, etc.) is performing in terms of error from itssetpoint. These processes can be examined by FDD layer 416 to exposewhen the system begins to degrade in performance and alert a user torepair the fault before it becomes more severe.

BIM Manager

Referring now to FIG. 5, a BIM management system including a BIM manager500 for manipulating and displaying building information models (BIMs)is shown, according to some embodiments. As mentioned above, a BIM is arepresentation of the physical and/or functional characteristics of abuilding. A BIM may represent structural characteristics of the building(e.g., walls, floors, ceilings, doors, windows, etc.) as well as thesystems or components contained within the building (e.g., lightingcomponents, electrical systems, mechanical systems, HVAC components,furniture, plumbing systems or fixtures, etc.). It will be appreciatedthat BIMs may be used to represent a variety of facilities includingcampuses, sites, building, etc., and that the term “building”, asdenoted herein, is not intended to be limiting.

In some embodiments, a BIM is a 3D graphical model of the building. ABIM may be created using computer modeling software or othercomputer-aided design (CAD) tools and may be used by any of a pluralityof entities that provide building-related services. For example, a BIMmay be used by architects, contractors, landscape architects, surveyors,civil engineers, structural engineers, building services engineers,building owners/operators, or any other entity to obtain informationabout the building and/or the components contained therein. A BIM mayreplace 2D technical drawings (e.g., plans, elevations, sections, etc.)and may provide significantly more information than traditional 2Ddrawings. For example, a BIM may include spatial relationships, lightinformation, geographic information, and/or qualities or properties ofbuilding components (e.g., manufacturer details).

In some embodiments, a BIM represents building components as objects(e.g., software objects). For example, a BIM may include a plurality ofobjects that represent physical components within the building as wellas building spaces. Each object may include a collection of attributesthat define the physical geometry of the object, the type of object,and/or other properties of the object. For example, objects representingbuilding spaces may define the size and location of the building space.Objects representing physical components may define the geometry of thephysical component, the type of component (e.g., lighting fixture, airhandling unit, wall, etc.), the location of the physical component, amaterial from which the physical component is constructed, one or morefunctional characteristics/capabilities of the physical component,and/or other attributes of the physical component.

In some embodiments, a BIM includes an industry foundation classes (IFC)data model that describes building and/or construction industry data. AnIFC data model is an object-based file format that facilitatesinteroperability in the architecture, engineering, and constructionindustry. An IFC model may store and represent building components interms of a data schema. An IFC model may include multiple layers and mayinclude object definitions (e.g., IfcObjectDefinition), relationships(e.g., IfcRelationship), and property definitions (e.g.,IfcPropertyDefinition). Object definitions may identify various objectsin the IFC model and may include information such as physical placement,controls, and groupings. Relationships may capture relationships betweenobjects such as composition, assignment, connectivity, association, anddefinition. Property definitions may capture dynamically extensibleproperties about objects. Any type of property may be defined as anenumeration, a list of values, a table of values, or a data structure.

A BIM can be viewed and manipulated using a 3D modeling program (e.g.,CAD software), a model viewer, a web browser, and/or any other softwarecapable of interpreting and rendering the information contained withinthe BIM. Appropriate viewing software may allow a user to view therepresentation of the building from any of a variety of perspectivesand/or locations. For example, a user can view the BIM from aperspective within the building to see how the building would look fromthat location. In other words, a user can simulate the perspective of aperson within the building.

Still referring to FIG. 5, BIM manager 500 can be implemented in aserver, multiple servers (e.g. via a distributed computingarchitecture), a cloud computing platform (e.g., MICROSOFT AZURE, AMAZONWEB SERVICES, etc.), a controller, via microservices located acrossmultiple computing devices, and/or on (or distributed across) any othercomputing device or system. In some embodiments, BIM manager 500 isimplemented via a processing circuit 510 (e.g., a memory and/or aprocessor) and/or implemented across multiple processing circuits (e.g.,multiple memories and/or processors).

Processing circuit 510 is shown to include a processor 512 and a memory520. Processor 512 can be a general purpose processor, an applicationspecific integrated circuit (ASIC), one or more field programmable gatearrays (FPGAs), a group of processing components, or other suitableelectronic processing components. Processor 512 can be communicativelycoupled to memory 520. Memory 520 can include one or more devices (e.g.,memory units, memory devices, storage devices, etc.) for storing dataand/or computer code for completing and/or facilitating the variousprocesses described in the present disclosure. While processing circuit510 is shown as including one processor 512 and one memory 520, itshould be understood that, as discussed herein, a processing circuitand/or memory may be implemented using multiple processors and/ormemories in various embodiments. All such implementations arecontemplated within the scope of the present disclosure.

Memory 520 can include random access memory (RAM), read-only memory(ROM), hard drive storage, temporary storage, non-volatile memory, flashmemory, optical memory, or any other suitable memory for storingsoftware objects and/or computer instructions. Memory 520 can includedatabase components, object code components, script components, or anyother type of information structure for supporting the variousactivities and information structures described in the presentdisclosure. Memory 520 can be communicably connected to processor 512via processing circuit 510 and can include computer code for executing(e.g., by processor 512 one or more processes described herein.

Memory 520 is shown to include an ontology engine 522 that identifiesobjects represented in a BIM and applies a semantic description to theobjects. In some embodiments, the objects represent spaces or equipmentwithin a building associated with the BIM. For example, a BIM mayinclude a plurality objects representing spaces such as rooms, wings,floors, levels, zones, etc., and a plurality of objects representingequipment such as HVAC equipment (e.g., ducts, VAVs, AHUs, etc.),security equipment (e.g., cameras, card readers, etc.), fire safetyequipment (e.g., alarms, sprinklers, etc.), or anything other equipmentthat may be included in a campus or building. As denoted herein, suchspaces and equipment within a building, campus, or site may generally bereferred to as physical building assets or building assets.

In some embodiments, a BIM is received by BIM manager 500 from a network542 after being uploaded by a user and/or retrieved from a networkdatabase 544. Ontology engine 522 may analyze a received BIM byidentifying a plurality of objects (e.g., BIM objects that representphysical building assets) within the BIM. For example, ontology engine522 may identify a first object representing a room (e.g., a spaceobject) and a second object representing HVAC equipment (e.g., anequipment object). Ontology engine 522 may then apply a semanticdescription schema to each object identified in the BIM, such that theobjects are described (i.e., identified, named) according to a schemaother than a native BIM schema. In some embodiments, ontology engine 522applies a semantic description schema that more closely relates to anatural language.

In some embodiments, ontology engine 522 may apply the semanticdescription schema by parsing a received BIM into sequences ofcharacters (i.e., strings) to be manipulated by a tag-set assigner 524.In an example where ontology engine 522 receives a BIM that includes aplurality of space or equipment objects, ontology engine 522 may parsethe BIM to determine strings that represent or describe each of the BIMobjects. Based on an input string, tag-set assigner 524 can assign tagsto groups of characters within said string. Tags may be a semanticdescriptor for a BIM object such as zone, equipment, building, point,temperature, humidity, server, controller, etc. Tags, when analyzedtogether, can represent a tag-set, for example, “Zone TemperatureSensor,” “Controller Airflow Setpoint,” etc. The tags and the tag-setsidentified by tag-set assigner 524 may be predefined tags and tag-sets.For example, the tags and tag-sets can be predefined tag-sets of aparticular schema, e.g., the Brick schema or schema otherwise related toand/or derived from the Brick ontology. As utilized herein, it should beunderstood that references to Brick include modifications thereof, suchas ontologies related to and/or derived from Brick.

The tag-set assigner 524 can be configured to generate tag-sets based onthe assigned tags. For example, a particular set of tags may correspondto a particular tag-set. Furthermore, one or more logical rule-sets candefine which groups of tags, or which order tags are identified in thestring, correspond to particular tag-sets. The result of the entitylabeling of the tag-set assigner 524 may be tag-sets and identifiers(IDs). The IDs can be identifying information that the tag-set assigner524 identifies does not correspond to a tag but rather identifies aparticular tag. For example, “FEC-31” may correspond to a “controller”tag where the particular controller represented by the tag is the number31 controller. The tag-set assigner 524 can provide the tag-sets and IDsto portfolio generator 530 for generation of a hierarchy structure.

In some embodiments, ontology engine 522 further analyzes the BIM afterapplying a semantic description schema by identifying relationshipsbetween objects within the BIM via a relationship analyzer 526. Forexample, ontology engine 522 may identify a first object representing aspace (“Room”) and a second object representing equipment (e.g., “AHU”),and relationship analyzer 526 may further identify one or morerelationships between the objects (e.g., the first object contains thesecond object, the second object serves the first object, etc.).

Similar to tag-set assigner 524, relationship analyzer 526 can analyzestrings representing various elements to identify relationships betweenthe elements, in some embodiments. For example, relationship analyzer526 may receive relational rules from a database 542, such as a ruleindicating that a string representing a control point subsequentlyfollowing a string representing a controller may indicate an“isAPointOf” relationship should be assigned between the stringrepresenting the controller and the string representing the controlpoint. Similar other rules can be implemented to identify therelationships.

In some embodiments, database 542 can include pre-defined relationshipsbetween various tag-sets, based on known or common relationships.Examples of the relationships can be a “VAV” tag-set “feeds” (therelationship) air into a room or space (a tag-set of a space type) or atemperature sensor “is located in” a room or space. In some embodiments,relationship analyzer 526 implements various statistical methods (e.g.,hidden Markov models), neural networks, Bayesian networks, latentsemantic analysis, or other machine learning algorithms to implement theidentification of relationships between the BIM objects. Furthermore, insome embodiments, relationship analyzer 526 operates on the tag-setsgenerated by the tag-set assigner 524 to determine the relationships.

In some embodiments, prior or subsequently to the application of asemantic description schema, BIM data may be ingested by a space graphand stored in a graph database (e.g., part of network database 544), asdescribed in U.S. patent application Ser. No. 16/260,078, incorporatedherein by reference in its entirety. Objects in the BIM may be stored asdigital twins of physical building assets, for example. The space graphcan be a dynamic data structure allowing entities (e.g., buildingassets), relationships, and/or information to be stored for operating abuilding. The space graph can be a data structure including nodes andedges, the nodes representing particular entities and the edges betweenthe nodes representing a relationship between the entities. The spacegraph can be a total representation, a digital twin, of an entire spacesince the space graph can represent the entities of the space,relationships between the entities, and data for the entities.

Still referring to FIG. 5, memory 520 is further shown to include aBAS-BIM integrator 528 that can integrate BAS data with a BIM by mappingBAS points to corresponding objects within the BIM. For example, a BASpoint associated with an output air temperature sensor for an AHU may bemapped to a BIM object that represents the AHU. In general, the mappingof a BIM includes integrating BAS points with a BIM, as described inU.S. patent application Ser. No. 14/919,516, incorporated herein byreference in its entirety. BAS points may be measured data points,calculated data points, setpoints, or other types of data points used,generated, or stored by a BAS (e.g., BAS 400). Advantageously,integrating BAS points with the BIM may allow dynamic BAS data to bepresented within a 3D model via a BIM viewer. For example, a user mayview real-time data from the BAS and/or trend data for objectsrepresented in the BIM by viewing the integrated BIM with integrated BASdata.

Memory 520 is further shown to include a portfolio generator 530 thatcan generate a hierarchy of building assets (e.g., spaces, equipment,etc.) based on a BIM, without manual (i.e., user) intervention. In someembodiments, portfolio generator 530 may generate a single hierarchybased on multiple BIMs, herein referred to as a site portfolio anddiscussed in greater details below, with respect to FIG. 13. In general,the hierarchy generated by portfolio generator 530 describes a physicalor spatial relationship between one or more building assets (e.g.,represented by BIM objects). For example, a campus may contain abuilding and the building may contain a plurality of floors. In thiscase, the campus may be identified as a top level (i.e., tier) of ahierarchy, followed by the building at a lower level, and the pluralityof floors at yet a lower level from the building.

In some embodiments, portfolio generator 530 can also generate ahierarchy of building assets based on information from a BAS (e.g., BAS400) or an analytical engine. For example, portfolio generator 530 maygenerate multiple hierarchies, including a hierarchy for each of theBIM, the BAS, and/or the analytical engine, as illustrated in FIGS. 21Aand 21B. In this regard, portfolio generator 530 can generatehierarchies for a BAS and/or analytical engine in a similar manner tothe generation of hierarchy based on a BIM.

Following the initial configuration and analysis of a BIM, a datacollector 532 may collect, aggregate, or otherwise manipulate data frommapped BAS points. In some embodiments, data collector 532 may receiveor request sensor data from a plurality of sensors, represented by BASpoints. For example, an AHU (e.g., AHU 106), represented as an objectwithin a BIM, can include various sensors, such as temperature sensors,pressure sensors, etc. Sensor data can be collected by data collector532 to be presented within a 3D model generated from the BIM, where thesensor data is presented with the BIM object that represents the AHU.

In some embodiments, data collector 532 receives or collects data froman analytical engine associated with the BAS. In various embodiments,the analytical engine is a component of BAS 400 and/or a networkcomponent. The analytical engine may handle the monitoring andmanipulation of sensor or other data, thereby reducing the resources(e.g., RAM, ROM, etc.) required by data collector 532. The analyticalengine may also monitor and/or manipulate other building data such asthermal or energy consumption data. In some embodiments, data collector532 may receive data from the analytical engine and aggregate the datainto larger data sets. For example, data collector 532 may receive aplurality of thermal data from the analytical engine, corresponding tozones of a building, and aggregate the thermal data to generate thermaldata for a larger zone (e.g., a room or floor of the building, theentire building).

Still referring to FIG. 5, a BIM viewer 534 is shown that may processBIM data to generate a 3D model. BIM viewer 534 generally generates 3Dmodels from BIM data. For example, BIM viewer 534 may generate a 3Dmodel of a building from one or more BIMs associated with the building.In some embodiments, BIM viewer 534 may include a 3D modeling program(e.g., CAD) for generating and displaying 3D models from BIM data. Inother embodiments, BIM viewer 534 may be wholly or partially implementedby processing circuit 510 or by a remote server (e.g., a dedicatedmodeling server or processor).

BIM viewer 534 is shown to further include a user interface (UI)generator 536. UI generator 536 may be implemented as a webserver thatcan store, process, and deliver web pages (e.g., HTML documents) to aweb browser of a user device 546, or as an application on a user device546 (e.g., desktop application, mobile application), for example. UIgenerator 536 may be configured to format and present the 3D modelsgenerated by BIM viewer 534, as well as a plurality of user interfacesfor configuring BIMs. UI generator 536 may generally receive inputs(e.g., HTTP requests) from user device 546.

User device 546 may be any electronic device that allows a user tointeract with BAS 400 and/or BIM manager 500 through a user interface.Examples of user devices include, but are not limited to, mobile phones,electronic tablets, laptops, desktop computers, workstations, and othertypes of electronic devices. User device 546 may be similar to clientdevice 368 as described above. In various embodiments, user device 546is communicates directly with BIM manager 500 or communicates vianetwork 542.

Memory 520 is shown to further include an alarm manager 538 that canmonitor alarm and/or fault data for one or more physical buildingassets. Alarm manager 538 may act as an interface between an analyticalengine or a BAS (e.g., BAS 400) and BIM manager 500, by receiving datafrom the analytical engine or BAS associated with the building assets.For example, alarm manager 538 may receive sensor data and analyze thesensor data to determine if a building asset associated with the sensoris experiencing an alarm or fault. In some embodiments, alarm managerreceives alarm and/or fault data from BAS 400 via network 542.

In some embodiments, the analytical engine processes sensor data andidentifies alarm or faults. The analytical engine may notify orotherwise communicate with alarm manager 538 regarding the alarm orfault. Upon identifying an alarm or a fault, alarm manager 538 maypresent the alarm or fault within a 3D model generated from a BIM, asdescribed in further detail with respect to FIG. 27. Alarm manager 538may also record or otherwise annotate the alarm or fault by associatingthe alarm or fault with an object in the BIM that represents the faultybuilding asset, and/or by storing alarm or fault data within networkdatabase 544.

Memory 520 is shown to further include a tracer logic manager 540 thatcan generate and manage fault tracer logic. Fault tracer logic, asdescribed in detail with respect to FIGS. 28 and 29, may be configuredfor one or more objects within a BIM that represent one or more buildingassets. Fault tracer logic may provide a visual indication of howbuilding assets affect one another, thereby indicating how a fault oralarm might affect upstream or downstream assets of the faulty asset.For example, a faulty AHU may subsequently affect terminal units fed bythe AHU. If fault tracer logic is configured for the AHU, terminalunits, and intermediary ductwork, the tracer logic manager 540 mayprovide an indication, within a 3D model, of the relationship betweenthe assets.

Referring now to FIG. 6, an example interface 600 for uploading BIMs isshown, according to some embodiments. In some embodiments, interface 600is generated by UI generator 536 and presented to a user of user device546. Interface 600 may allow a user to identify an organization and/orsite and upload one or more BIMs associated with the organization and/orsite simultaneously. A user may be a user of a BAS (e.g., BAS 400), auser of BIM manager 500, a site facilitator, a site or building manager,a service technician, or any other user that may interact with thesystems and interfaces described herein.

As shown, interface 600 may include a number of icons for navigatingbetween pages, such as an organization page 602, a site page 604, and animport page 606. For example, the user may navigate to organization page602 to add information about an organization, such as the organization'sname and address, a building owner's name and contact information, afacility manager's name and contact information, etc. In someembodiments, the user may select previously defined organizations from alist. The user may then navigate to site page 604 to add informationabout a site, such as a site name, address, geographic coordinates, abuilding managers contact name and contact information, etc. Similar toorganization page 602, in some embodiments, the user may select siteinformation from a list of previously defined sites. In general, anorganization is a company or other organization that may own and/oroperate one or more sites (e.g., campuses, buildings, etc.).

After defining an organization and a site, a user may navigate to importpage 606 to upload BIM or IFC files. Here, the user may enter a facilityname and select a choose files button 608 to choose one or more BIMs toupload. The facility name may be an identifier for a particular buildingassociated with a campus or site, for example. Once the BIMs have beenuploaded, information about the uploaded files may be populated in adata table 610. Data table 610 may present a file name, a facility,status icons, and other options for the uploaded BIMs. For example, thestatus icons may indicate whether 3D model information and/or metadatahas been processed for the uploaded BIM. In some embodiments, the statusof the uploaded BIM may be associated with one or more processesperformed by BIM manager 500. Additionally, the other options may allowa user to select a default BIM and/or delete a particular BIM. Thedefault BIM may be a first BIM that is presented to the user for viewingand/or configuration, for example.

In some embodiments, once a user has uploaded a BIM using interface 600,the BIM may be subject to one or more automatic configuration processes.In some embodiments, the automatic configuration processes may beperformed by BIM manager 500, and completion of the automaticconfiguration processes may be indicated by the status icons of datatable 610. For example, a graphical model may be generated for the newlyuploaded BIM and/or metadata associated with the BIM may be processedbefore the status icons show that the BIM upload is completed.

One such automatic configuration process may be the translation of anuploaded BIM to a semantic description schema (i.e., naming schema). Insome embodiments, the translation may be performed by ontology engine522, described above with respect to FIG. 5. By defining objects withinthe BIM that represent building or campus assets (e.g., spaces,equipment, etc.) according to a semantic description schema, a user maymore easily understand and/or navigate the BIM. The semantic descriptionschema is generally a schema that promotes consistency andinterpretability in the definitions of objects within the BIM bydefining the BIM objects in a machine-readable format that approximatesa natural language.

Semantic Description Schema

Referring now to FIG. 7, a diagram 700 illustrating a structure for thetranslation of a BIM to a semantic description schema is shown,according to some embodiments. Diagram 700 may be an example visualrepresentation showing how objects in the BIM and their relationships toother objects can be redefined according to the semantic descriptionschema. In some embodiments, diagram 700 illustrates the translationperformed by ontology engine 522.

In some embodiments, the semantic description schema is a Brick schema,and ontology engine 522 translates a BIM into the Brick schema asdescribed in U.S. patent application Ser. No. 16/663,623, incorporatedherein by reference in its entirety. The Brick specification defines howentities in a building are be named, defines relationships betweenentities, and defines how the entities and relationships can bevisualized as a graph. Details of Brick, according to oneimplementation, can be found in Brick: Towards a Unified Metadata Schemafor Buildings by Balaji, Bharathan, et al. published Nov. 16, 2016,Scrabble: Transferrable Semi-Automated Semantic Metadata NormalizationUsing Intermediate Representation by Jason Koh, et. al. published inNovember of 2018, and Poster: Scrabble: Converting Unstructured Metadatainto Brick for Many Buildings by Jason Koh, et. al. published inNovember of 2017, the entirety of each of which is incorporated byreference herein.

In the Brick schema, every entity in a building is represented by atag-set, which is decomposed to multiple tags. Brick can model points,equipment, locations, measurement properties, etc. as entities via atag-set. Tag-sets can be ordered as a hierarchy, for example, anequipment tag-set can be a high level class for an HVAC tag-set which inturn can be a high level class for an AHU tag-set.

As an example, “Room Temperature Sensor” may be a particular tag-setmade up of multiple tags, e.g., Room, Temperature, and Sensor. The RoomTemperature Sensor tag-set can be a subclass of a Temperature Sensortag-set, which itself may be a subclass of a Sensor tag-set. With such ahierarchy, a system can find a collection of temperature sensors easilyusing tag searching or other methods. In some embodiments, in the Brickschema, new custom tag-sets with tags can be added to make the schemacomprehensive.

In Brick, tags can represent a unit concept in buildings and aredecomposed from tag-sets. Tags can be used to infer a tag-sets meaningand allow a system to search a Brick model without using a querylanguage. For example, a system can easily identify that the tag-set“Room Temperature Sensor” is related to the tags “Room,” “Temperature,”and “Sensor” programmatically. This moderates tag-based representationmechanisms to have more coverage.

Still referring to FIG. 7, diagram 700 is shown to include multiple BIMobjects, such as spaces 710 and 712, and equipment 714 and 716.Generally, a space is an area, floor, wing, zone, room, etc. of abuilding and equipment is any asset within the building represented byan object within the BIM. When the Brick schema is applied, for example,by ontology engine 522, the spaces, equipment, and/or other assetsrepresented by objects in the BIM may be redefined (e.g., by applying atag or tag-set) according the Brick schema. For example, in the Brickschema, space 710 is shown to be defined as a “Floor” and space 712 isshown to be defined as a “Room”. Likewise, equipment 714 is defined asan “AHU” and equipment 416 is defined as a “VAV.”

Diagram 700 is also shown to include a plurality of relationships720-730. As described above, the Brick schema may also define howrelationships between BIM objects are defined. Relationships 720-730 maydescribe how two BIM objects relate to each other. For example,relationship 720 may represent a relationship between space 710 andspace 712. In this example, space 710 (“Floor”) “contains” space 712(“Room”). Likewise, space 712 (“Room”) “isPartof” space 710 (“Floor”).In this regard, applying a semantic description schema, such as Brick,to a BIM may increase usability of a BAS-BIM integrated system byproviding a more natural description (i.e., naming) schema whilemaintaining machine readability. Applying a more natural descriptionschema may increase a user's ability to navigate and understand thesystem while also providing more consistent and complete definitions.

Referring now to FIG. 8, a diagram 800 of a data structure thatillustrates Brick schema applied to an example BIM is shown, accordingto some embodiments. Diagram 800 may illustrate the generation of ahierarchy structure based for a BIM, as described above, for example.Diagram 800 is shown to include a number of objects and relationshipsbetween the objects. For example, an object representing a site 810“contains” an object representing a building 812. Likewise, building 812“isPartOf” site 812. In this example, building 812 may be a child (i.e.,subordinate) object of site 810. Diagram 800 shows how the applicationof Brick schema to a BIM can aid in the generation and subsequentunderstanding of a hierarchy structure, by describing BIM objects andobject relationships in a more natural manner.

As shown in diagram 800, building 812 “contains” a building story 814.Building story 814 is shown to include a number of assets, including aspace 820, an asset 830, and an AHU 840. Space 820 further includesequipment 822 that “hasPointof” a sensor 824 (“ZN-T1”). For example, abuilding story may include a damper (e.g., damper 316) that furtherincludes a temperature sensors for monitoring air temperature as itpasses through the damper. Asset 830, and likewise, AHU 840,“HasLocation” building story 814. AHU 840 further “Feeds” a VAV 842. Tocontinue the previous example, the building story may further contain aroom and an AHU, where the AHU may supply one or more VAVs to control anenvironmental condition of the building story and, thereby, the room.

Site Portfolio

Another automatic configuration process includes the generation of ahierarchy structure based on a BIM. In some embodiments, portfoliogenerator 530 generates a hierarchy structure after the application ofthe semantic description schema by ontology engine 522. The hierarchystructure may identify a hierarchy of building assets, represented byobjects within the BIM. For example, a hierarchy structure generatedbased on a building including a plurality of spaces and equipment maydefine a hierarchy of the spaces and equipment (e.g., the buildingincludes a floor, that includes a room, that further includes an AHU).Generating a hierarchy structure based on a BIM may provide a user withan easy-to-navigate overview of a physical relationship between buildingassets.

Referring now to FIG. 9, a diagram 900 illustrating how a hierarchystructure may be generated is shown, according to some embodiments.Diagram 900 may illustrate the generation of a hierarchy structure froma facility management portfolio and a BIM. In some embodiments, thefacility management portfolio may be compiled based on BAS data and/orBAS point, as described above. As shown, diagram 900 may demonstrate howfacility management portfolio objects may be represented in a BIM, andhow objects in the BIM may be translated into a hierarchy structure. Insome embodiments, the hierarchy structure is generated from the BIMafter the Brick schema has been applied.

In some embodiments, a facility management portfolio may first berepresented within a BIM. A first object, a portfolio 910, may berepresented as an organization 930 within a BIM. Subsequent (i.e.,child) objects of the first object including facilities 912 andbuildings 914 are represented as sites 932 and buildings 934 within theBIM, respectively. Buildings 914 may contain floors 916 represented bylevels 936 in the BIM. Floors 916 are shown to include areas 918 androoms 920, both of which may be represented as spaces 938 in the BIM.

In some embodiments, the BIM may be used to generate a hierarchystructure according to the Brick schema. For example, the hierarchystructure may be generated based on the relationships between objects inthe BIM, as described above. A first object, organization 930, may berepresented as an organization 950 in the hierarchy structure.Subsequent (i.e., child) objects of the first object including sites 932and buildings 934 are represented as facilities 952 and buildings 954 inthe hierarchy structure, respectively. Buildings 934 may contain levels936, represented by floors 956 in the hierarchy structure, and levels936 may include spaces 938. When generating the hierarchy structure,spaces 938 and assets 940 may be further defined as wings 958, zone 860,and/or rooms 962, each potentially including equipment 964.

Referring now to FIG. 10, an example interface 1000 for redefiningassets within the hierarchy structure is shown, according to someembodiments. Once a hierarchy structure is generated, as described withrespect to FIG. 9, a user may choose to manually manipulate thehierarchy structure, for example, to redefine (i.e., rename) one or moreBIM objects. Interface 1000 may give a user manual control over the BIMand/or hierarchy structure, allowing the user to configure the BIMand/or hierarchy structure in a more desirable or intuitive manner,based on the user's preferences. In some embodiments, interface 1000 maybe generated by UI generator 536 and presented to a user via user device546.

Interface 1000 is shown to a BIM tree 1002. In some embodiments, BIMtree 1002 is a textual representation of the hierarchy structuregenerated by portfolio generator 530. BIM tree 1002 may be a nestedhierarchy, where subordinated objects of a selected object are populatedin a drop-down menu responsive to a user selection of the selectedobject. As shown in FIG. 10, for example, a user may select a firstobject, “Space 28,” and responsive to the selection, a list of objectssubordinate to the first object may populate (e.g.,“BuildingElementProxy”, “EnergyConversionDevice”, etc.). The user maythen select a second object from the list of subordinate objects andagain, responsive to the selection, a list of objects subordinate to thesecond object may populate (e.g., “EnergyConversionDevice Outdoor AHU .. . ”).

In some embodiments, the most recently selected object may populateunder a naming menu 1004. For example, when “EnergyConversionDeviceOutdoor AHU—Horizontal . . . ” is selected from BIM tree 1002, the nameof the selected object is populated under an “Old Name” field in namingmenu 1004. The user may then enter a new name for the object under a“New Name” field and select an update button 1006 to apply the change.Subsequently, an updated BIM tree 1008 may be presented within interface1000 that includes the updated name for the object.

Referring now to FIG. 11, a flow diagram of a process 1100 forautomatically configuring a BIM and generating a hierarchy structure isshown, according to some embodiments. Process 1100 can be performed byBIM manager 500, for example. Process 1100 generally describes theconfiguration process for a BIM, from when a BIM is uploaded (e.g., asdescribed with reference to FIG. 6) to the generation of a hierarchystructure (e.g., as described with reference to FIG. 9). In this regard,process 1100 may include any of the configuration processes describedabove.

At step 1102, a BIM is received. The BIM may be received by BIM manager500, for example, after having been retrieved from network database 544and/or uploaded by a user of user device 546. The BIM may be generallyassociated with one or more facilities (e.g., buildings, campuses,sites, etc.) owned by, operated by, or otherwise associated with anorganization, and may represent at least a portion of a building orfacility.

At step 1104, the configuration of the BIM begins by extracting metadataassociated with the BIM. Metadata can be broadly defined as data thatdescribes other data. For example, BIM metadata may include informationregarding the BIM as a whole (e.g., file size, file name, creation date,etc.) and/or information about the objects within the BIM. Generally,extracting the BIM metadata includes analyzing the BIM and extractingrelevant data for performing subsequent steps of process 1100. Forexample, the metadata extracted may be data on the objects andstructures including in the BIM. In some embodiments, the BIM and/orassociated metadata may be stored in a database, such as networkdatabase 544.

At step 1106, objects within the BIM and/or object relationships areidentified from the extracted metadata. As described above, the receivedBIM may include a plurality of objects that represent physical assets(e.g., spaces, equipment) within a building (e.g., building assets) orother facility represented by the BIM. For example, a BIM may include aplurality of objects that represent spaces such as rooms, floors, wings,etc., and a plurality of objects that represent equipment such as HVACequipment, fire safety equipment, security equipment, etc. In someembodiments, the BIM may include objects that represent other physicalassets of a building.

As described with reference to FIG. 7, for example, the relationshipsbetween objects may describe how objects affect one another, or maydescribe a physical relationship between the objects. For example, afirst object representing a space (e.g., a room) may contain a secondobject representing equipment (e.g., an AHU). In this case, the physicalrelationship “contains” may be identified. In some embodiments, therelationships between objects may be identified in a native descriptionschema of the BIM or by analyzing strings that represent the objects(e.g., as described with reference to relationship analyzer 526).

At step 1108, a semantic description schema is applied to the BIM. Thesemantic description schema may be applied by ontology engine 522, forexample. In some embodiments, the semantic description schema may beBrick schema or another schema that redefines objects within the BIM andtheir relationships. The semantic description schema generally describesobjects and object relationships in way that aligns with naturallanguages. For example, an object may be redefined from a “zone” to aroom, or an object representing equipment may be redefined by a class ortype of equipment. In some embodiments, at step 1108 or following step1108, the BIM data (e.g., with the semantic description schema applied)may be ingested by a space graph and stored in a graph database (e.g.,part of network database 544), as described above.

At step 1110, BAS points of the facility (e.g., site, campus, building,etc.) associated with the BIM are mapped to corresponding objects in theBIM. Step 1106 may be performed by BAS-BIM integrator 528, for example.Mapping BAS points to corresponding BIM objects may include associatinga point (e.g., a sensor) of the BAS to an object within the BIM. Forexample, a BAS point for an output air temperature sensor of an AHU maybe mapped to a BIM object representing the AHU.

At step 1112, a hierarchy structure is generated. The hierarchystructure may be generated by portfolio generator 530, for example.Generating the hierarchy structure may include organizing the previouslyidentified objects within the BIM based on a physical relationship ofthe objects. For example, a previously identified floor of a build mayinclude one or more rooms that further include one or more devices orequipment. In some embodiments, the hierarchy structure is generatedbased on the BIM data after the semantic description schema is applied.In this way, the hierarchy structure may provide an easy to understandoverview of all building assets within a building represented by theBIM.

At step 1114, a three-dimensional (3D) model is generated from theconfigured BIM. Step 1114 may be performed by BIM viewer 534, forexample. Generating the 3D model may include processing the BIM data viaa computer-aided drawing program or another type of 3D modelling engine.The 3D model generally includes a 3D graphical representation of abuilding or site represented by the BIM. The 3D may also include 3Dgraphical representations of building assets such as spaces and/orequipment.

In some embodiments, the 3D model is interactive, allowing a user tomanipulate and interact with the 3D model. For example, the user mayrotate, pan, zoom, or otherwise alter a perspective view of the 3Dmodel. The user may also navigate between spaces within the model (e.g.,between floors of a building). In some embodiments, the 3D model mayinclude adequate detail to allow the user to navigate through the modelin a first-person perspective.

Configuring Multiple BIMs

In some embodiments, a user may upload more than one BIM at a time. Forexample, a user interacting with interface 600 may select a plurality ofBIMs to upload together. In some embodiments, the plurality BIMs may belinked in order to generate a site portfolio that incorporateshierarchies from multiple BIMs. Additionally, the BIMs may be linked inorder to view multiple BIM concurrently within a single interface, orfor a variety of other reasons.

As an example, a user may upload a plurality of BIMs corresponding to asingle building, where each BIM corresponds to a distinct zone (i.e.,space) of the building. In this example, the user may wish to generate asite portfolio, indicating a hierarchy of building assets and/or objectswithin the BIM that encompass the entirety of the building. Uploadingmultiple distinct BIMs and linking said files may increase processing,transmitting, and rendering speeds by reducing the size of each BIM andinstead incorporating many, small BIMs. In other embodiments, a user mayupload multiple BIMs each corresponding to something other thandifferent zones. For example, in some implementations, each BIM maycorrespond to a different building subsystem, such as HVAC, lighting,fire protection, etc. In some such embodiments, the different BIMs maycorrespond to the same or overlapping zones or areas.

Referring now to FIG. 12, a flow diagram of a process 1200 for linking aplurality of BIMs is shown, according to some embodiments. In someembodiments, process 1200 may be performed by BIM manager 500. Process1200 may generally describe at least a portion of a configurationprocess for two or more BIMs when the BIMs are linked together. Forexample, a first BIM representing a building may be linked to a secondBIM that represents a floor of the building (e.g., in greater detail).In another example, a site may include four buildings, each representedby a BIM, and the BIMs representing the buildings may be linked to abase BIM that represents the complete site.

Linking BIMs according to process 1200 may beneficially reduce the sizeof each individual BIM, thereby increasing configuration and renderingspeeds when processing BIM data to generate a 3D model. For example, asingle BIM that represents an entire building may necessarily be verylarge in file size (e.g., multiple gigabytes) in order to accuratelydescribe the building and building assets. By linking multiple BIMs,each describing a subset of the building (e.g., a floor, a room, asubsystem, etc.), the file size for each BIM is reduced. In addition toincreased processing and rendering speeds, smaller file size may also beeasier to transmit (e.g., upload or download) between systems. In someembodiments, the linked BIMs may be presented concurrently within asingle interface to provide a complete view of a building or otherfacility represented by the BIMs.

At step 1202, two or more BIMs are received. The BIMs may be received byBIM manager 500, for example, after having been retrieved from networkdatabase 544 and/or uploaded by a user of user device 546. As describedabove, the received BIMs may each represent at least a portion of abuilding or facility and/or may be identified by a user to be linked. Insome embodiments, BIMs corresponding to a common building mayautomatically be identified to be linked. In some embodiments, step 1202may further include extracting metadata and/or identifying objects andobject relationships with the BIMs, as described in detail with respectto step 1104 and 1106 of process 1100.

At step 1204, a semantic description schema is applied to each of thereceived BIMs. Step 1204 may be substantially similar to step 1108,described above. The semantic description schema may be applied byontology engine 522, for example. In some embodiments, the semanticdescription schema may be Brick schema or another schema that redefinesobjects within the BIM and their relationships. The semantic descriptionschema generally describes objects and object relationships in way thataligns with natural languages. For example, an object may be redefinedfrom a “zone” to a room, or an object representing equipment may beredefined by a class or type of equipment.

At step 1206, a user input is received that identifies a base BIM. Theuser selection may be received via user device 546, for example. Thebase BIM may be one of the two or more BIMs that represents an entiretyor a majority of a facility (e.g., building, site, campus) associatedwith the two or more BIM. For example, the base BIM may be a first BIMthat describes or represents an exterior view of an entire building. AnyBIMs not identified as the base BIM but corresponding to a commonbuilding may represent small sections of the building. As anotherexample, a second may represent a subsystem of the building (e.g., HVACsystem, hot water system, electrical system, etc.), a zone of thebuilding (e.g., a floor or level, a room, etc.), or any other subset ofthe building as a whole.

At step 1208, a hierarchy structure is generated for each of the BIMs.In some embodiments, step 1208 is performed prior to, concurrently with,or immediately after step 1206. In some embodiments, step 1208 issubstantially similar to step 1112, described above. The hierarchystructure for each BIM may indicate a physical relationship betweenbuilding assets represented within the BIM. In some embodiments, thehierarchy structure may be a hierarchy of objects within the BIM thatrepresent spaces of a building or site associated with the BIM.

At step 1210, each of the two or more BIMs not identified as the baseBIM are linked to the base BIM. By linking the BIMs, each non-base BIMis associated with the base BIM, for example, by linking the BIMs withina database (e.g., network database 544). In some embodiments, linkingthe BIMs may include adding pointers that associate a memory or databaseaddress/location of the BIMs and BIM objects. Linking the BIMs, asdescribed above, may reduce the file size of each individual BIM makingthe BIMs easier to transmit and manipulate.

At step 1212, a 3D model is generated from the data of the two or moreBIMs. Step 1212 may be performed by BIM viewer 534, for example, and thegenerated 3D model may be presented via user device 546. Generating the3D model may include processing the BIM data via a computer-aideddrawing program or another type of 3D modeling engine. The 3D modelgenerally includes a 3D graphical representation of a building or siterepresented by the BIM. The 3D may also include 3D graphicalrepresentations of building assets such as spaces and/or equipment.

In some embodiments, the 3D model is a generated from multiple BIMs suchthat the multiple BIMs and/or 3D models are generated and presentedconcurrently. For example, a previously defined base BIM may represent afirst floor of a building and subsequent linked BIMs may representadditional floors of the same building. In this example, the base BIMand the other linked BIMs may be presented concurrently, within a singleinterface or BIM viewer. In some embodiments, the 3D model represents atleast a portion of each of the linked BIMs. For example, a 3D modelgenerated from two BIMs may represent at least a portion of each BIM.

Advantageously, presenting multiple BIMs in a single interface may allowthe 3D model to include greater detail than a 3D model generated from asingle BIM. Additionally, presenting the multiple BIMs within a singleinterface may also reduce or eliminate loading time when navigatingbetween multiple individual BIMs. In some embodiments, presentingmultiple BIMs concurrently, in a single interface, allows a user to viewand navigate a 3D building model in a lightweight web browserenvironment.

Referring now to FIG. 13, a flow diagram of a process 1300 forgenerating a site portfolio from a plurality of linked BIMs is shown,according to some embodiments. When two or more BIMs (e.g., representinga common building) are uploaded and linked, it may be beneficial togenerate a site portfolio that describes a hierarchy for an entire siteor building. The site portfolio may include not only a hierarchy ofobjects within the BIMs, but also a hierarchy of BIMs when multiple BIMsare linked (e.g., to display in a single interface). The site portfoliomay be generated based on a hierarchy of spaces (e.g., represented byobjects in the BIMs) for the combined BIMs and/or based on a hierarchyof the BIMs themselves.

At step 1302, a hierarchy level for each of the two or more BIMs isidentified. Additionally, categories of hierarchy levels may beidentified. In some embodiments, the hierarchy levels may be folders forsorting the plurality of BIMs. For example, based on the two or moreBIMs and/or the hierarchy data previously generated for the BIMs, it maybe identified that all of the BIMs correspond to a building. In anotherexample, a top level of the hierarchy may be identified as a campus. Insome embodiments, other categories (e.g., HVAC subsystems, electricalsubsystems, etc.) may also be defined based on the combine hierarchydata.

At step 1304, a complete list of hierarchy data is generated based oncombined hierarchy data from the two or more BIMs. Advantageously, thecomplete list of hierarchy data provides a single, consolidatedhierarchy for the two or more BIMS. In some embodiments, the completelist of hierarchy data is generated by merging data from the two or moreBIMs into such a single, consolidated hierarchy. The complete list ofhierarchy data may include lists of buildings, floors, zones, and otherspaces identified in the two or more BIMs. For example, a list of sitesmay be generated based on a facility represented in the BIMs, or a listof floors may be generated based on a building represented in the BIMs.

At step 1306, a placeholder within the hierarchy of spaces isidentified. In various embodiments, the placeholder may be automaticallyidentified (e.g., by portfolio generator 530) or may be selected by auser. The placeholder may be a hierarchy level that a BIM may be linkedto. For example, a user may select a BIM representing a building (e.g.,“Building A”) and indicate that the BIM should be listed under aparticular hierarchy level corresponding to a campus. The placeholdermay give a user manual control over the organization of a siteportfolio, so that the user may more easily navigate between BIMs.

At step 1308, one or more BIMs are linked to the placeholder. In variousembodiments, the placeholder may be a particular BIM or an object withina hierarchy or database. Linking BIMs to the placeholder generallyincludes mapping or otherwise associating the BIMs with the placeholder(e.g., in a database), or may include generating a pointer to a locationof the BIM within a database. At step 1308, the placeholder may befurther defined, for example, by identifying a name for a facility orbuilding associated with the placeholder.

At step 1310, a site portfolio is generated that defines a hierarchy ofBIMs for an entire organization. The site portfolio may be a datastructure that describes a hierarchy of building assets, represented byobjects in the BIMs. In some embodiments, the site portfolio may beinclude a plurality of hierarchy levels that each contain a plurality ofBIMs. For example, a first level (e.g., an organization) may include asecond level (e.g., a site) that may include a plurality tertiary levels(e.g., each representing a building) that further include a plurality ofBIMs (e.g., each representing at least a portion of a building). In someembodiments, the site portfolio may be similar to a folder system fororganizing files, where folders (e.g., hierarchy levels) are nestedwithin each other.

BAS-BIM Integration

Subsequently or concurrently to the application of a semanticdescription schema and the generation of a portfolio, a BIM may beintegrated with a BAS in order to incorporate live or historical assetdata into the BIM, as well as to provide greater functionality orcontrol over the BAS via the BIM. Generally, integrating BAS and BIMdata includes mapping a plurality of BAS points to a plurality ofobjects within the BIM, as described above with reference to FIG. 5. Forexample, a BAS point associated with a temperature sensor may be mappedto a corresponding object within the BIM that provides a digitalrepresentation of a temperature sensor. In this way, temperature datafrom the temperature sensor may be viewed within a 3D model, generatedfrom the BIM.

Referring now to FIG. 14, an example interface 1400 for mapping aplurality of BIMs is shown, according to some embodiments. Interface1400 may be generated by UI generator 536 and presented to a user viauser device 546, for example. In some embodiments, the plurality of BIMsmay be mapped by BAS-BIM integrator 528. Interface 1400 may allow a userto select one or more BIMs to map simultaneously. A user may choose tomap a subset of uploaded BIMs, for example.

Interface 1400 is shown to include a site portfolio 1402. In someembodiments, site portfolio 1402 is a textual representation of the siteportfolio generated from process 1300, described above. Site portfolio1402 may present a plurality of drop down menus that allow a user toselect an organization, a site, a building, and/or an individual BIM. Asshown in FIG. 14, for example, a user may select an organization(“Pune”), a site (“Pune Site”), and a building (“Pune Building”). Afterselecting the organization, site, and/or building, the user may selectone or more unmapped BIMs from an unmapped file menu 1404, to be mappedto the selected organization, site, and/or building. For example, theuser may select BIM “test RTU” by marking the check box within unmappedfile menu 1404 and, by selecting a map files button 1406, map theselected BIM to building “Pune Building.”

Referring now to FIGS. 15 and 16, example interfaces 1500 and 1600 forintegrating BAS points associated with spaces of the site or buildingwith a BIM are shown, according to various embodiments. Interfaces 1500and 1600 may be generated by UI generator 536 and presented to a uservia user device 546, for example. In some embodiments, interfaces 1500and 1600 may provide a user with a method of mapping a plurality of BASpoints to a plurality of objects within the BIM. For example, interfaces1500 and 1600 may allow the user to map BAS points that could not beautomatically mapped (e.g., due to a mismatch in a description schema).Interfaces 1500 and 1600 may also provide a user additional control overthe configuration of a BIM by allowing the user to view, modify, and/ordelete currently mapped spaces and/or equipment.

As shown in FIG. 15, interface 1500 may be presented responsive to auser selection of a first navigation tab 1502 (“Space”). Interface 1500may allow a user to map previously unmapped spaces associated withpoints from a BAS or facility management system to objects within a BIM.Interface 1500 is shown to include a first navigation menu 1510 thatallows a user to select a space associated with the BAS or facilitymanagement system, and a second navigation menu 1520 that allows theuser to select a particular BIM or a space from a BIM.

Interface 1500 is further shown to include a plurality of navigationtabs 1530-1538 that a user may select to view currently mappedorganizations, sites, buildings, floors, or spaces. Within thenavigation tabs, the user may delete one or more of the mapped spaces.The user may select a first unmapped space via a first dropdown menu1540 and a second unmapped space via a second dropdown menu 1542. Oncethe unmapped spaces are selected, the user may select a map button 1544to integrate the spaces.

As shown in FIG. 16, interface 1600 may be presented responsive to auser selection of a second navigation tab 1504 (“Equipment”). Interface1500 may allow a user to map previously unmapped equipment from a BAS orfacility management system to objects within a BIM. For example, a usermay select spaces from first navigation menu 1510 (e.g., building “CH”)and 1520 (e.g., floor “Building Storey Level 7”). Subsequently, the usermay make a selection from dropdown menus 1610 and/or 1620 to view aplurality of currently unmapped equipment points and objects withinmenus 1612 and 1622. The user may then select a particular equipmentpoint and object from each of menus 1612 and 1622, respectively, and byselecting a map button 1630, integrate the selected point and object.The user may also be presented with a mapped equipment table 1640 toview and delete currently mapped equipment.

Backup and Restore

In some embodiments, the configuration of a BIM or multiple BIMs, asdescribed above, may be saved in as a backup. In an example where a BIMhas been configured by applying a semantic description schema andmapping a plurality of BAS points to objects within the BIM, theconfiguration of the BIM (e.g., including the semantic descriptionschema and the mapping) may be backed-up to a database (e.g., networkdatabase 544). Subsequently, a new BIM (e.g., an updated version of theoriginal BIM) may be uploaded and the backed-up configuration may beapplied to the new BIM via a restore process.

Backup and restore functionality may be desirable, as BIMs may changeregularly. For example, a BIM representing a building may change eachtime the building undergoes construction or renovation, or when buildingassets such as equipment (e.g., HVAC equipment, fire safety equipment,etc.) is added, removed, or moved. In some embodiments, the backup andrestore functionality may decrease the amount of time required toconfigure a BIM. In the example above, applying the configuration of aBIM to an updated version of said BIM may save a user time in manuallymapping BAS points to BIM objects.

Referring now to FIG. 17, a flow diagram of a process 1700 forbacking-up and restoring a BIM configuration is shown, according to someembodiments. In some embodiments, process 1700 may be separated into twodistinct sub-processes including a backup process and a restore process.As shown, for example, steps 1702 through 1710 may be associated withthe backup process and steps 1712 through 1726 may be associated withthe restore process. In some embodiments, the backup and restore processmay be performed sequentially. In other embodiments, the backup processmay be performed any time prior to the restore process.

At step 1702, a selection of a first, previously configured BIM isreceived for backup. The BIM may be a previously configured BIM storedin network database 544, for example. The BIM may be selected by a user(e.g., of user device 546) at any time following the configuration ofthe BIM, as described above. In some embodiments, a BIM manager (e.g.,BIM manager 500) may be configured to automatically backup a BIMfollowing configuration.

At steps 1704-1708, at least one of mapped points (e.g., BAS pointsmapped to BIM objects), space configuration data (e.g., zone heat maps),or asset documents are identified. In various embodiments, steps1704-1708 may be performed concurrently or sequentially. In variousembodiments, the mapped point, space configuration, and/or assetdocument data may be retrieved from a database such as network database544 or identified from the retrieved BIM configuration. Steps 1704-1708may further include generating a list from the identified mapped points,space configuration data, or asset documents for a selected BIM.

At step 1710, the backup file is stored in a database, such as networkdatabase 544. The mapped points, space configuration data, and assetdata may be aggregated into a single backup file, for example. Invarious embodiments, the backup file may be stored with the BIM in thedatabase or a link or pointer to the backup file may be generated sothat the backup file might be stored in another part of the database.

At step 1712, a new BIM is received. The new BIM may be received from auser device (e.g., user device 546) or retrieved from network database544, for example. The new BIM is generally an updated version of apreviously backed-up BIM. As described above, for example, the new BIMmay represent the same building or facility as the original BIM afterconstruction, renovation, building asset relocation, etc. In someembodiments, one or more of the automatic configuration processesdescribed above may be performed on the new BIM prior to the restorationof the original BIM configuration. For example, a semantic descriptionschema may be automatically applied to the new BIM, and/or a hierarchymay be generated.

At step 1714, the original BIM and its configuration is deleted. In someembodiments, the original BIM is deleted responsive to a user selectionto replace the original BIM with the new BIM. Deleting the original BIMmay include removing the BIM from a database (e.g., network database544) and may further include removing pointers or links to the originalBIM within the database. In some embodiments, the new BIM may beuploaded to the same database location as the original BIM, in whichcase the pointers or links may not be removed.

At steps 1716-1720, at least one of previously backed-up mapped points,space configuration data, and asset documents is received. In variousembodiments, steps 1716-1720 may be performed concurrently orsequentially. In various embodiments, the mapped point, spaceconfiguration, and/or asset document data may be retrieved from adatabase such as network database 544 or identified from the retrievedBIM configuration.

At step 1722, the received data is validated. Validating the receiveddata may include comparing the received data with a hierarchy generatedfor the new BIM, for example. In some embodiments, the data may bevalidated by identifying whether the received data corresponds to anobject within the new BIM. For example, identified objects within thenew BIM may be compared to received mapped point backup to identifyobjects within the BIM that do not correspond to previously mappedpoint.

At steps 1724-1726, the retrieved data is applied to the new BIM and anyunmapped points or other data are logged. In some embodiments, once thedata is validated, it may be applied to the new BIM or stored in adatabase (e.g., network database 544). Any backup data not associatedwith the new BIM may be identified so that a list may be generated formanual configuration by a user. For example, an object that is presentin the new BIM may not correspond to a previously mapped BAS point, ifthe object was not included in the original BIM (e.g., a new HVAC assetor new structural assets due to a renovation). In this example, the newobject may be identified so that the user may manually map a BAS pointor multiple BAS points to the identified object.

Referring now to FIG. 18, an example interface 1800 for performing thebackup and restore functionality of FIG. 17 is shown, according to someembodiments. In some embodiments, interface 1800 may be generated by UIgenerator 536 and presented via user device 546. As described above, thebackup and restore functionality may allow a user to apply aconfiguration from a plurality of current or previously configured BIMsto a new BIM, thereby reducing or eliminating the need for the user tomanually configure each new BIM that is uploaded. A user may select aparticular organization, site, building, floor, zone, and/or BIM via anavigation bar 1802. Once selected, the user may select a backup button1806 within a backup menu 1804 to initiate a backup process, asdescribed above with respect to FIG. 17. Backup menu 1804 may provide auser with feedback with visual or textual feedback indicating a statusof the backup process. As shown in FIG. 18, for example, backup menu1804 may indicate when the points binding (e.g., mapped points), spaceheat map, and technical assets are successfully saved. Backup menu 1804is also shown to include a time stamp indicating the last successfulbackup.

Once the BIM has been successfully backed up, the user may browse for anew, replacement BIM by selecting a browse button 1812, included in areplacement menu 1808. Subsequently, the user may select a replacebutton 1810 or a clear button 1814. Selecting replace button 1810 mayinitiate a process that include uploading the new BIM and replacing theoriginal BIM with the new, replacement BIM. Selecting clear button 1814may clear the selected replacement BIM, thereby allowing the user toselect another replacement BIM. In some embodiments, replacement menu1808 may include a radio button, check box, or other graphical objectthat prompts the user to confirm the replacement of the original BIMwith the new BIM, providing protection against unintentionally replacingthe original BIM.

Finally, once the original BIM configurations have been backed up andthe original BIM has been replaced by the new replacement BIM, the usermay select a restore button 1818 including in a restore menu 1816.Restore button 1818 may initiate the restore process, as described abovewith respect to steps 1712 through 1726 of FIG. 17. The restore processmay apply the configuration of the original BIM to the new replacementBIM. As shown, restore menu 1816 may also include a timestamp of thelast successful restore.

3D Building Model

Following one or more of the configuration processes described above, athree-dimensional (3D) model may be generated from the BIM data. In someembodiments, the 3D model is a 3D building model generated by BIM viewer534 and presented to a user of user device 546 via UI generator 536. Insome embodiments, the 3D model may be a digital representation (i.e.,digital twin) of a facility (e.g., site, campus, building, or otherfacility). For example, the 3D model may be a digital representation ofa building that includes a plurality of building assets, such as spacesand/or equipment. The 3D model may provide an interactive, graphicalrepresentation of the building and building assets.

In some embodiments, the 3D model is generated from multiple BIM filesand may include multiple BIMs presented concurrently. For example, a 3Dmodel of a building may be generated from multiple BIMs, including afirst BIM (e.g., a base BIM) that represents a majority of the building(e.g., an exterior view of the whole building) and a plurality ofadditional BIMs that each represent a subsection of the building (e.g.,each BIM defines a floor or subsystem of the building). Advantageously,presenting multiple BIMs concurrently may reduce the file size for eachBIM, thereby increasing computing or rendering speed, by allowingsublevels or subsystems of a facility to be broken out into separateBIMs.

Referring now to FIG. 19, an example interface 1900 of a BIM viewer thatcan concurrently present multiple BIMs as 3D models is shown, accordingto some embodiments. Interface 1900 is shown to include a 3D model 1910that may be a digital representation of a building. Generally, 3D model1910 represents an entirety or a majority of a facility (e.g., a campus,a site, a building, etc.) In some embodiments, 3D model 1910 may begenerated from a single BIM or from multiple BIMs. In some embodiments,3D model 1910 is generated from a base BIM and may contain data from aplurality of additional BIMs. In some embodiments, 3D model 1910 isgenerated from multiple 3D models, each associated with a single BIM.

Interface 1900 is shown to include a variety of graphical objects formanipulating and navigating the 3D model. For example, interface 1900 isshown to include a subsystem navigation icon 1914 and a level navigationicon 1912, described in detail below with respect to FIGS. 20 and 21C,respectively. Interface 1900 is also shown to include a focus icon 1920and a reset icon 1922 that may be selected by a user to adjust theperspective of 3D model 1910 or reset interface 1900 to a default view.Additionally, a rotate icon 1924, a pan icon 1926, and/or a navigateicon 1928 may be selected to further adjust the view of 3D model 1910,by rotating the model, panning across the model (e.g., within a singleplane), or navigating to different areas of the building.

Interface 1900 is further shown to include a visibility icon 1930, asection icon 1932, a material icon 1934, and a brightness icon 1936.Visibility may be selected to show or hide components of 3D model 1910,such as walls, beams, doors, windows, etc. Section icon 1932 may beselected to view either a vertical or horizontal cross-section of 3Dmodel 1910. Material icon 1934 may be selected to adjust the materialsthat are illustrated in 3D model 1910. Brightness icon 1936 may beselected to adjust the brightness of 3D model 1910. Also shown are aheat map icon 1938 and a data icon 1940, described in detail below withrespect to FIGS. 25-28. In some embodiments, selecting data icon 1940may present a data menu, allowing the user to choose a type of data toview.

In addition to the graphical objects for manipulating and navigating 3Dmodel 1910, interface 1900 also includes a number of graphical objectsfor navigating between different interfaces. For example, interface 1900is shown to include a search icon 1942 that may be selected in order tosearch for objects (e.g., spaces, equipment) within the BIM. Interface1900 also includes an analytics icon 1944 for viewing a variety of livedata on physical building assets represented by objects within the BIM,such as current values, alarms, etc. A home icon 1946 may be selected toreturn from any interface to interface 1900. More generally, home icon1946 resets the interface to that shown in interface 1900. Anotification icon 1948 and/or a fault icon 1950 may be selected to viewa variety of information on general notifications and/or faults forbuilding assets represented by objects within the BIM. Finally, a menuicon 1952 may be selected to populate a menu for navigating betweenother interfaces such as a configuration interface (e.g., one ofinterface 600, interface 1000, interface 1400, etc.), a settingsinterface, or other interfaces.

Referring now to FIG. 20, an example interface 2000 for filtering withinthe BIM viewer is shown, according to some embodiments. As describedabove, responsive to a user may selection of subsystem navigation icon1914, the user may be presented with a subsystem menu 2016. By selectingone or more subsystems to view (e.g., by selecting a checkboxcorresponding to each subsystem), the user may limit the number ofsubsystems shown with the interface. As shown in FIG. 20, for example, auser may select all the available subsystems, except for an architecturesubsystem, to be viewed. In this example, the user is present with afiltered 3D model 2010. Filtered 3D model 2010 may be a 3D model of onlythe selected subsystems, such as HVAC, electrical, plumbing, etc. Insome embodiments, a separate BIM is associated with each of thesubsystems, such that filtered 3D model 2010 is a compilation ofmultiple BIMs, being presented concurrently. In some embodiments, eachof the subsystems is included in a single BIM that represents a singlefloor (i.e., story, level, etc.) or a single building. Much likeinterface 1900, for example, interface 2000 includes functionality thatallows a user to focus, reset, rotate, pan, etc., filtered 3D model2010.

Referring now to FIGS. 21A-21C, example navigation interfaces that maybe presented within the BIM viewer are shown, according to variousembodiments. Specifically, FIG. 21A is shown to include a firstconfiguration of a navigation interface 2100 that illustrates a siteportfolio menu 2110, a building structure menu 2120, and a spacehierarchy menu 2130. In some embodiments, a user may select one of themenus, thereby causing a list of associated BIM objects to populate. Forexample, the first configuration of navigation interface 2100 show inFIG. 21A is shown with site portfolio menu 2110 selected and a hierarchyof previously defined sites and/or building populated. In someembodiments, the hierarchy presented under site portfolio menu 2110 isbased on the site portfolio generated by portfolio generator 530. Asshown, for example, site portfolio menu includes a hierarchy oforganizations, sites, and facilities or campuses. Each of the facilitiesor campuses is shown to include a number of BIMs, generally representinga building.

FIG. 21B is shown to include an alternate configuration of navigationinterface 2100, where building structure menu 2120 has been selected.Similar to the example above, when building structure menu 2120 isselected, a hierarchy of spaces within a building (e.g., rooms, spaces,zones, levels, etc.) is populated. In some embodiments, the hierarchy ofspaces presented under building structure menu 2120 is populated basedon a selection of a site or building within site portfolio menu 2110.

In some embodiments, the hierarchy presented under building structuremenu 2120 is based on the hierarchy structure generated by portfoliogenerator 530. In some embodiments, a user may navigate through thehierarchy shown in building structure menu 2120 to view particularequipment or BAS points associated with a space. For example, a user mayselect “Space 16” from building structure menu 2120 to view a pluralityof BAS points associated with sensors in “Space 16”.

In a similar manner to building structure menu 2120, space hierarchymenu 2130 may be selected, and a hierarchy of objects with the BIM(e.g., zones, equipment, etc.) populated. The hierarchy of objectspresented under space hierarchy menu 2130 may be based on a selection ofa space in building structure menu 2120, for example. In someembodiments, space hierarchy menu 2130 may be generated based on ahierarchy of objects within a BIM after the application of a semanticdescription schema. In this regard, space hierarchy menu 2130 mayprovide a hierarchy of building assets corresponding to objects in theBIM based on an intuitive and/or easy-to-understanding descriptionschema.

FIG. 21C is shown to include a navigation interface that may bepresented when level navigation icon 1912, described above with respectto FIG. 19, is selected. For example, responsive to a user may selectionof level navigation icon 1912, the user may be presented with a levelmenu 2150. By selecting one or more levels (e.g., floors, zones,stories, etc.) to view (e.g., by selecting a checkbox corresponding toeach level), the user may limit the number of levels shown with theinterface. For example, a user may select all the available levels,except for level 8. In this example, the user is present with a filtered3D model (e.g., 3D model 1910) including only the selected levels. Insome embodiments, a separate BIM is associated with each of the level,such that the 3D model is a compilation of multiple BIMs being presentedconcurrently. In some embodiments, each of the levels is included in asingle BIM that represents a single building (i.e., campus, site, etc.).

Referring now to FIG. 22, an example interface 2200 illustrating a firstperson perspective within the BIM viewer is shown, according to someembodiments. Interface 2200 may be presented to a user when a userselects a particular space (e.g., floor, story, room) to view via thenavigation interface described above with respect to FIGS. 21A-21C, forexample. In some embodiments, interface 2200 is presented to a user whenthe user selects navigate icon 1928 and chooses to navigate to aparticular story (i.e., floor, level) within 3D model 1910. For example,when a user selects navigate icon 1928, a navigation submenu 2220 may bepresented. Navigation submenu 2220 may allow a user to select aparticular floor of the building represented by 3D model 1910 and bepresented with a first-person perspective view 2210 of the selectedfloor. The user may then adjust a slider shown in navigation submenu2220 to control a speed at which to navigate through the 3D model of theselected floor.

Analytics

Referring now to FIG. 23, an example interface 2300 of a zone heat mapthat presents thermal data for particular spaces or zones within the BIMviewer is shown, according to some embodiments. Interface 2300 may bepresented to a user via user device 546 responsive to a selection ofheat map icon 1938, for example. In some embodiments, thermal data maybe collected from an analytics engine by data collector 532. As shown,interface 2300 includes a 3D model 2310 of a building, where a top floorof the building is visible. 3D model 2310 includes a number of zones2312-2320 that have been configured to present thermal datacorresponding to each zone. For example, a user may select zone 2312(e.g., a conference room) to display current temperature and temperaturealarm data within a data window 2330. Data window 2330 may provide avariety of information to a user such as a space ID (“Space 15”), atemperature setpoint and current temperature (e.g., 20° C. and 19° C.,respectively), and alarm data (e.g., an upper limit of 30° C. and alower limit of 20° C.).

In some embodiments, a shading, color, style, or other identifyingfeature of each zone may change based on the temperature of the zone, analarm status for the zone, a temperature setpoint for the zone, etc.,thereby providing a user with an easy to understand overview oftemperatures within a plurality of zones of a building or site. Forexample, user may identify, at a glance, what zones are above or belowdesired temperature setpoints. Such information may allow the user toquickly identify problems with spaces or equipment (e.g., air conditionequipment that is not working correctly) or identify other informationto aid in building or site management.

Referring now to FIG. 24, an example interface 2400 for configuring thezone heat map of FIG. 23 is shown, according to some embodiments.Interface 2400 may be presented to a user via user device 546 responsiveto a selection a configuration interface from menu icon 1952, forexample. When presented with interface 2400, a user may first select aBIM to configure, utilizing a navigation bar 2402. After selecting theBIM, a BAS tree 2404 and a space tree 2406 may populate with a portfolioof BAS or BIM space objects associated with the selected BIM. A user mayselect a space (e.g., space 28) from space tree 2406, for example, andconfigure temperature data for the space.

As shown in interface 2400, a name or definition for the selected spacemay populate in a space selection field 2410. Interface 2400 is alsoshown to include a space temperature field 2412, a temperature setpointfield 2414, and a temperature limits field 2416. In some embodiments, acurrent temperature, temperature setpoint, and/or temperature limits fora space are retrieved from BAS 400 or an analytics engine associatedwith BAS 400, or entered by a user. The user may delete a stored zoneconfiguration by selecting a delete button 2418. Likewise, by selectinga clear button 2420, the user can clear data entered into one of thefields 2412-2416. Selecting a save button 2422 may map the entered zoneconfiguration to the zone, thereby populating the zone thermal data onthe zone heat map.

Referring now to FIGS. 25 and 26, example interfaces that presentthermal data and energy consumption data within a 3D building model areshown, according to various embodiments. Specifically, FIG. 25 is shownto include an example interface 2500 and FIG. 26 is shown to include anexample interface 2600. Interfaces 2500 and 2600 may be presented to auser responsive to a selection of data icon 1940, for example. Thethermal and energy consumption data presented in interfaces 2500 and2600 may be beneficial in the management of a campus or building, byallowing the user to view data trends and historical data to makedecisions about future operations. It will be appreciated that, whileinterfaces 2500 and 2600 are described below with respect to floors of a3D model, similar thermal and/or energy consumption data functionalitymay applied to other spaces or zones of a site, campus, or building(e.g., aggregate thermal or energy consumption data for zones, rooms,spaces, floors, buildings, etc.).

Interface 2500 is shown to include a 3D model 2510, generated from oneor more BIMs. Much like 3D model 1910, 3D model 2510 may be generated byBIM viewer 534 and presented via user device 546. 3D model 2510 is shownto include a plurality of floors (i.e., levels, stories) in variousshades or colors. The various shades may indicate an average aggregatetemperature for each floor, for example. In some embodiments, the styleor color of each floor is associated with a how closely the averagetemperature for each floor matches a minimum value 2512 or a maximumvalue 2514. For example, as a floor's average aggregate temperatureapproaches minimum value 2512, the color or style of the floor will moreclosely match that of the minimum value 2512.

In some embodiments, a user may be presented with a textualrepresentation of the average aggregate temperature for each floor, asshown in a temperature table 2520. A user may also be able to select toview historical, live, or simulated, future thermal data via anavigation menu 2530. For example, a user may select to view historicalthermal data for a previous month, week, or day. In another example, theuser may view simulated thermal data over a selected time period, wherethe simulated future data is based on previously collected thermal data.The user may be presented with an animation of the thermal data, wherethe style or color of 3D model 2510 and/or the values presented intemperature table 2520 change with respect to the thermal data. Thisfunctionality may allow the user to view trends or identify otherimportant information from the average temperature values of selectedfloors.

Interface 2600 is shown to include a 3D model 2610, generated from oneor more BIMs. Much like 3D model 1910, 3D model 2610 may be generated byBIM viewer 534 and presented via user device 546. 3D model 2610 is shownto include a plurality of floors (i.e., levels, stories) in variousstyles or colors. The various shades may indicate an average aggregateenergy consumption for each floor, for example. In some embodiments, thestyle or color of each floor is associated with a how closely aggregateenergy consumption for each floor matches a minimum value 2612 or amaximum value 2614. For example, as a floor's aggregate energyconsumption approaches minimum value 2612, the color or style of thefloor will more closely match that of the minimum value 2612.

In some embodiments, a user may be presented with a textualrepresentation of the aggregate energy consumption for each floor, asshown in an energy consumption table 2620. A user may also be able toselect to view historical, live, or simulated, future energy consumptiondata via a navigation menu 2630. For example, a user may select to viewhistorical energy consumption data for a previous month, week, or day.In another example, the user may view simulated energy consumption dataover a selected time period, where the simulated future data is based onpreviously collected energy consumption data. The user may be presentedwith an animation of the energy consumption data, where the style orcolor of 3D model 2610 and/or the values presented in energy consumptiontable 2620 change with respect to the energy consumption data. Thisfunctionality may allow the user to view trends or identify otherimportant information from the aggregate energy consumption values ofselected floors.

Fault Tracer Logic

In many respects, a BIM can be a useful tool in identifying alarms,faults, or necessary maintenance events among building assets. Asdescribed above, for example, a BIM may act as a digital twin, providinga digital representation of a physical building asset. In this regard,the BIM may allow a user to interact with physical building assets via a3D model, to view information regarding alarms, faults, and/ordiagnostics. Viewing alarm, fault, and/or diagnostic data in this waycan provide insight into how an alarm or fault may affect upstream ordownstream assets of the problem asset, and may provide an easy tonavigate and intuitive interface for viewing such data about multipleassets quickly. Viewing such data in a 3D model may also provide anindication to the physical location of a problem asset, therebydecreasing troubleshoot and/or maintenance times by aiding a user innavigating to the problem asset.

Referring now to FIG. 27, an example interface 2700 that shows alarmdata associated with a building asset is shown, according to someembodiments. Interface 2700 may be presented to a user via user device546, responsive to a selection of analytics icon 1944, for example.Interface 2700 is shown to provide a high-level 3D model 2710 of abuilding having a plurality of spaces (e.g., floors, levels, stories)and a plurality of building assets (e.g., equipment such as AHUs, VAVs,etc.). In some embodiments, alarms or faults associated with a physicalbuilding asset may be reflected within interface 2700, via a graphicalobject within 3D model 2710 (e.g., a BIM object) that corresponds to(i.e., represents) the physical building asset. Interface 2700 may alsoprovide an overview of alarms or faults throughout the building bypresenting a menu 2712 (e.g., list, table, etc.) of alarms and faults.In some embodiments, alarms and/or faults may be identify by alarmmanager 538, as described above.

Shown within 3D model 2710 is an AHU object 2714. AHU object 2714 may bea digital representation of a physical building asset (e.g., an AHU)within the building represented by 3D model 2710, for example. In theevent that the physical AHU associated with AHU object 2714 experiencesan alarm or a fault, AHU object 2714 may provide a visual indication ofthe alarm or fault. For example, AHU object 2714 may highlight (e.g.,change color or style), flash, or otherwise indicate the alarm or fault.In some embodiments, the alarm or fault may also be presented in menu2712. Interface 2700, for example, shows AHU object 2714 experiencing aplurality of alarms.

By either selecting AHU object 2714, or one of the alarms from menu2712, a user may be presented with additional information about thealarms. As shown in menu 2712, AHU object 2714 is experiencing adischarge air temperature alarm and a return air temperature alarm. Theuser may be presented with additional information such as an alarmstate, a point name (e.g., of the BAS point associated with the alarm),a description, an indication of linked objects within the BIM (e.g., AHUobject 2714), a detection time, a reference identifier, and a link tosubmit a service request, for example. In some embodiments, the user canuse this information in developing a maintenance or service plan andtracking alarms and faults for building assets.

To increase efficiency and effectiveness in addressing alarms and faultamong building assets, additional functionality can be included to tracealarms and faults through a system. For example, when a user selects afirst object within a 3D model that indicates a fault, it may be usefulfor the user to be presented with an indication of additional objectsthat affect, or are affected by, the first object. Using FIG. 27 as anexample, if a user selects AHU object 2714, it may be useful to presentobjects representing ductwork, terminal units, or other building assetsthat are served by the AHU associated with AHU object 2714. Suchfunctionality, herein referred to as fault tracer logic, can provide theuser with a visual indication of how an alarm or a fault in a particularbuilding asset can affect upstream or downstream assets.

Referring now to FIG. 28, a process 2800 for configuring fault tracerlogic is shown, according to some embodiments. Process 2800 may beperformed by tracer logic manager 540 in conjunction with alarm manager538, for example. In some embodiments, portions of process 2800 areperformed during the initial configuration of one or more BIMs. Process2800 generally provides a method for configuring fault tracer logic andutilizing fault tracer logic to troubleshoot or service an alarm orfault for a building asset that is represented as a graphical objectwithin a 3D model (e.g., 3D model 2710).

At step 2802, the fault tracer logic is configured by a user. In someembodiments, the fault tracer logic is configured by the user via userdevice 546 and the fault tracer logic configurations are generated basedon user input by tracer logic manager 540. In various embodiments, faulttracer logic may be configured via a dedicated fault tracer logicconfiguration interface or directly within a 3D model (e.g., within aBIM viewer). In general, the user configures the fault tracer logic byselecting a first object (e.g., a graphical object) within the 3D modeland identifying one or more upstream or downstream objects of the firstobject, where the upstream objects affect the first object and thedownstream objects are affected by the first object. Each of the objectsmay be a digital representation of a building asset (e.g., a space orequipment). The identified upstream or downstream objects may then belinked to the first object by tracer logic manager 540.

As an example, the user may initiate a new instance of fault tracerlogic for a first object (e.g., AHU object 2714) that represents aphysical building asset (e.g., an AHU). The user may select the firstobject from a 3D model representing a building containing the physicalbuilding asset associated with the first object. The user may thenidentify one or more upstream or downstream objects representingphysical building assets (e.g., terminating units such as VAVs, ductworkthat connects the AHU to the VAVs) to the first object. In someembodiments, the user identifies upstream and downstream object byselecting the object and linking it to the first object. Once all theupstream and downstream objects are linked to the first object, thefault tracer logic configuration may be generated (e.g., by tracer logicmanager 540) and stored (e.g., in network database 544). The user maysubsequently select one or more fault tracer logic configurations (e.g.,pre-configured for a plurality of objects) to enable or disable (e.g.,to present or hide within the 3D model).

At step 2804, building assets represented by graphical objectsconfigured for fault tracer logic are monitored for alarms and/orfaults. In some embodiments, alarm manager 538 monitors the buildingassets in conjunction with an analytics engine associated with a BAS(e.g., BAS 400). The analytics engine may first receive data from aplurality of physical building assets (e.g., from sensors, equipment,spaces, etc.) and analyze the data to determine if one or more of thebuilding assets is experiencing an alarm or fault condition. In theevent that an alarm or fault is detected the analytics engine, anotification or other data may be sent to alarm manager 538.). In otherembodiments, alarm manager 538 monitors the building assets directly.

At step 2806, an alarm and/or fault associated with a building asset isidentified. In some embodiments, the alarm or fault is identified byalarm manager 538, responsive to a notification or other data receivedfrom the analytics engine. In additional to identifying the alarm orfault, information or additional data about the alarm or fault may bereceived. For example, information such as an alarm state, a point name(e.g., of the BAS point associated with the alarm), an indication of anobject (e.g., a BIM object) associated with the point (e.g., AHU object2714), a description of the alarm, a detection time, a referenceidentifier, or other information may also be identified or received.

At step 2808, the alarm or fault data is presented with a 3D model. Insome embodiments, the alarm or fault is presented in an interface suchas interface 2700, described above with respect to FIG. 27. The alarm orfault data may be presented as a list, table, text box, or other textualrepresentation (e.g., menu 2712) of one or more alarms or faults. Thealarm or fault data may also be presented within the 3D model, where avisual appearance of a graphical object (e.g., AHU object 2714) thatrepresents the building asset associated with the alarm or fault ismodified to indicate (e.g., highlight) the alarm or fault condition. Asshown in FIG. 27, for example, AHU object 2714 may flash to indicatethat the physical building asset represented by AHU object 2714 isexperiencing an alarm or fault condition.

At step 2810, a user selection of a textual or graphical object thatindicates an alarm or fault is received. In some embodiments, the userselection is received via user device 546. To continue the previousexample, the user may make a selection of AHU object 2714, whichindicates an alarm condition, from 3D model 2710. In another example,the user may select an alarm from menu 2712.

At step 2812, responsive to the user selection, the fault tracer logicis presented. In some embodiments, the fault tracer logic is presentedto the user via user device 546, as shown in FIG. 29, described below ingreater detail. The fault tracer logic may be presented by altering avisual appearance of the selected graphical object and any previouslyconfigured upstream or downstream objects. For example, responsive tothe user selection of AHU object 2714, the visual appearance of AHUobject 2714 and previously defined downstream objects just as ductworkand/or terminal units within 3D model 2710 may be altered. The visualappearance may alter by changing color or shading, flashing, orotherwise highlighting the selected graphical object and its associatedupstream/downstream objects. The presentation of fault tracer logic isillustrated in FIG. 29, described in further detail below.

Referring now to FIG. 29, an example interface 2900 that shows the faulttracer logic within a 3D model is shown, according to some embodiments.In some embodiments, interface 2900 is an example of an interfacepresented to a user responsive to a selection of an object within a 3Dmodel that has been configured for fault tracer logic. Interface 2900,for example, may be presented responsive to a selection of AHU object2714, or responsive to a selection of an alarm associated with AHUobject 2714 from menu 2712.

As shown, interface 2900 includes an alternate perspective view of 3Dmodel 2710. A user may be presented with the alternate perspective viewof 3D model 2710 as a result of panning, zooming in on, or otherwisemanipulating 3D model 2710, for example. In some embodiments, thealternate perspective view is automatically presented responsive to theuser selection of AHU object 2714.

Interface 2900 is shown to include a number of objects that representdownstream building assets associated with AHU object 2714, including aduct object 2910 and terminal unit objects 2912 and 2914. Duct object2910 and terminal unit objects 2912 and 2914 may be BIM objects thatcorrespond to physical building assets within the building representedby 3D model 2710. Responsive to a selection of AHU object 2714 and/or analarm associated with said object, an appearance of duct object 2910 andterminal unit objects 2912 and 2914 may alter (e.g., a color change,highlighting, etc.) to indicate that said objects are affected by AHUobject 2714. Additionally, a text box 2916 is presented that includesinformation about AHU object 2714, such as an identification number, aname, and a location. In some embodiments, text box 2918 can displaymore or less information about a selected object.

From the visual indication of interface 2900, a user can quicklydetermine how an alarm associated with AHU object 2714 may affect otherbuilding assets. For example, an alarm indicating a low output airtemperature may indicate that rooms served by terminal units associatedwith terminal unit objects 2912 and/or 2914 may not reach a desiretemperature setpoint. In another example, where one of terminal unitobjects 2912 or 2914 represent a VAV, an alarm or fault indicated forthe VAV may be traced back to the AHU represented by AHU object 2714. Inthis example, the alarm or fault indicated for the VAV may have actuallybeen caused by the AHU, and fault tracer logic may provide such insightto a user.

In some embodiments, certain object or building asset relationships maybe viewed without configuring fault tracer logic. Object or buildingasset relationships may be identified based on a hierarchy or siteportfolio generated by portfolio generator 530, for example. Suchfunctionality may reduce configuration time for a BIM while providingthe user with an indication of how an object or building asset affects,or is affected by, other objects or building assets.

In some embodiments, a user may select any object within the 3D modeland be presented with an interface similar to interface 2900. Forexample, a user may select a security device (e.g., a camera), alighting device, a fire safety device, etc., and be presented with afault tracer logic interface. In an example where a user selects anobject that represents a security camera, the fault trace logicinterface may show a communication path from the security camera to anassociated server or recording device. In this regard, the fault tracerlogic may provide the user with a visual indication of the relationshipsbetween any objects within the 3D model.

Referring now to FIG. 30, an example interface 3000 that presents objectrelationships within a 3D model viewer is shown, according to someembodiments. A user may be presented with interface 3000 responsive to aselection of a particular graphical object within a 3D model, forexample. In some embodiments, interface 3000 may be an alternate view(i.e., perspective) of 3D model 2710. For example, a user may pan, zoom,or otherwise manipulate 3D model 2710 to achieve a perspective view suchas that shown in FIG. 30. Such manipulation may provide a more focusedview of a single graphical object within the 3D model, allowing the userto view a variety of additional information associated with the object.

Responsive to a selection of AHU object 2714, for example, additionalinformation may be presented in an object menu 3010. In someembodiments, object menu 3010 may be presented within interface 3000 asan overlay, populated beside a graphical object (e.g., AHU object 2714)or covering the graphical object. Object menu 3010 is shown to include anumber of navigation icons 3012 for navigating between submenus. Onesuch submenu, a relationship submenu 3014, can present informationregarding physical, mechanical, electrical, or other types ofconnections between building assets. For example, relationship submenu3014 shows that an AHU (e.g., represented by AHU object 2714) serves aplurality of VAVs (e.g., VAV 0, VAV 1, and VAV 4).

Additionally, object menu 3010 may present information such as serviceor maintenance information for a building asset associated with theselected object. In some embodiments, service requests can be generatedin response to an alarm, a fault, or a scheduled maintenance.Advantageously, providing service or maintenance information as anoverlay to a graphical object representing a building asset may reducethe amount of time a user may need to spend searching for similarinformation (e.g., within a separate menu). Service and/or maintenanceinformation may allow the user to track open or historical servicerequest and monitor the health or status of building assets.

Referring now to FIGS. 31 and 32, example interfaces for viewing serviceinformation within a 3D model viewer are shown, according to variousembodiments. Specifically, FIG. 31 is shown to include an exampleinterface 3100 for viewing a service request status and FIG. 32 is shownto include an example interface 3200 for viewing historical servicereports. In some embodiments, both interfaces 3100 and 3200 illustratealternate views (i.e., perspectives) of 3D model 2710, described above.For example, a user may pan, zoom, or otherwise manipulate the 3D modelto achieve a view such as that shown in FIGS. 31 and 32. Each ofinterfaces 3100 and 3200 are also shown to include a plurality ofsubmenus, including an asset details menu 3110, a service request statusmenu 3120, and a service report menu 3140. In some embodiments, thesubmenus may be presented responsive to a user selection of one ofnavigation icons 3012.

In some embodiments, each of asset details menu 3110, service requeststatus menu 3120, or service report menu 3140 may expand (e.g.,drop-down) to present additional information, responsive to a userselection of a submenu. As shown in interface 3100, for example,selecting service request status menu 3120 may present the user with adrop-down menu, further presenting a number of service requests3122-3130. One of the service requests may then be selected to presentinformation associated with the service request. For example, servicerequest 3122 may be selected to view information such as a servicerequest number, a date, a description, a status, and a rectificationdate.

As shown in interface 3200, selecting service report menu 3140 maypresent the user with a drop-down menu that further presents a number ofwork orders 3142-3148. One of the work orders may be selected to presentinformation associated with the selected work order. For example, workorder 3142 may be selected to view information such as a work orderreference number, a status, a contact number, a report date, comments,and a corresponding service report number.

In some embodiments, a user may also view other diagnostic data withinthe 3D model viewer. For example, the user may view diagnostic dataother than the alarm data presented in interface 2700, and may navigateto the diagnostic data via object menu 3010, by selecting fault icon1950, or by another method. Additional diagnostic data may aid the userin troubleshooting or servicing a faulty building asset.

Referring now to FIG. 33, an example interface 3300 that presentsdiagnostic data as an overlay to a 3D model is shown, according to someembodiments. As described above, interface 3300 may be presentedresponsive to a selection of one of navigation icons 3012 or a selectionof fault icon 1950, for example. Interface 3300 is shown to include adiagnostic menu 3310 within object menu 3010. Diagnostic menu 3310 isshown to provide fault data for a number of building assets. Forexample, “AHU-02” is shown to have two faults, including a “CH-FD-011Low Compressor Discharge Superheat—YK” fault.

Additionally, interface 3300 is shown to include a diagnostic text box3320. Diagnostic text box 3320 is shown superimposed (i.e., overlaid) ona 3D model (e.g., AHU object 2714). Diagnostic text box 3320 may provideadditional information, beyond that found in diagnostic menu 3310. Forexample, diagnostic text box 3320 includes further details aboutspecific faults (e.g., “damper closed”, “actuator fault”) for aparticular building asset and may include additional information aboutthe particular building asset such as relationship data. As describedabove, relationship data can be useful in troubleshooting and/orservicing building assets, by determining how a fault in a firstbuilding asset may affect upstream or downstream assets of the firstasset.

Configuration of Exemplary Embodiments

The construction and arrangement of the systems and methods as shown inthe various exemplary embodiments are illustrative only. Although only afew embodiments have been described in detail in this disclosure, manymodifications are possible (e.g., variations in sizes, dimensions,structures, shapes and proportions of the various elements, values ofparameters, mounting arrangements, use of materials, colors,orientations, etc.). For example, the position of elements may bereversed or otherwise varied and the nature or number of discreteelements or positions may be altered or varied. Accordingly, all suchmodifications are intended to be included within the scope of thepresent disclosure. The order or sequence of any process or method stepsmay be varied or re-sequenced according to alternative embodiments.Other substitutions, modifications, changes, and omissions may be madein the design, operating conditions and arrangement of the exemplaryembodiments without departing from the scope of the present disclosure.

As utilized herein, the terms “approximately,” “about,” “substantially,”and similar terms are intended to have a broad meaning in harmony withthe common and accepted usage by those of ordinary skill in the art towhich the subject matter of this disclosure pertains. It should beunderstood by those of skill in the art who review this disclosure thatthese terms are intended to allow a description of certain featuresdescribed and claimed without restricting the scope of these features tothe precise numerical ranges provided. Accordingly, these terms shouldbe interpreted as indicating that insubstantial or inconsequentialmodifications or alterations of the subject matter described and areconsidered to be within the scope of the disclosure.

The present disclosure contemplates methods, systems and programproducts on any machine-readable media for accomplishing variousoperations. The embodiments of the present disclosure may be implementedusing existing computer processors, or by a special purpose computerprocessor for an appropriate system, incorporated for this or anotherpurpose, or by a hardwired system. Embodiments within the scope of thepresent disclosure include program products comprising machine-readablemedia for carrying or having machine-executable instructions or datastructures stored thereon. Such machine-readable media can be anyavailable media that can be accessed by a general purpose or specialpurpose computer or other machine with a processor. By way of example,such machine-readable media can comprise RAM, ROM, EPROM, EEPROM, CD-ROMor other optical disk storage, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to carry or storedesired program code in the form of machine-executable instructions ordata structures and which can be accessed by a general purpose orspecial purpose computer or other machine with a processor.

When information is transferred or provided over a network or anothercommunications connection (either hardwired, wireless, or a combinationof hardwired or wireless) to a machine, the machine properly views theconnection as a machine-readable medium. Thus, any such connection isproperly termed a machine-readable medium. Combinations of the above arealso included within the scope of machine-readable media.Machine-executable instructions include, for example, instructions anddata which cause a general purpose computer, special purpose computer,or special purpose processing machines to perform a certain function orgroup of functions.

Although the figures show a specific order of method steps, the order ofthe steps may differ from what is depicted. Also two or more steps maybe performed concurrently or with partial concurrence. Such variationwill depend on the software and hardware systems chosen and on designerchoice. All such variations are within the scope of the disclosure.Likewise, software implementations could be accomplished with standardprogramming techniques with rule based logic and other logic toaccomplish the various connection steps, processing steps, comparisonsteps and decision steps.

What is claimed is:
 1. A method comprising: receiving, by one or moreprocessors, a first building information model (BIM) file and a secondBIM file, the first BIM file and the second BIM file both associatedwith a building comprising one or more assets; identifying, by the oneor more processors, a first set of BIM objects within the first BIM fileand a second set of BIM objects within the second BIM file, the firstset of BIM objects and the second set of BIM objects each comprising oneor more BIM objects associated with the one or more assets; identifying,by the one or more processors, one or more relationships between objectsof the first set of BIM objects and objects of the second set of BIMobjects; applying, by the one or more processors, a semantic descriptionto the first set of BIM objects, the second set of BIM objects, and theone or more relationships; and after applying the semantic description,generating, by the one or more processors, a data structure comprisingthe first set of BIM objects, the second set of BIM objects, and therelationships.
 2. The method of claim 1, further comprising identifying,by the one or more processors, a hierarchy level for the first BIM fileand the second BIM file, wherein the hierarchy level indicates acategory for a corresponding BIM file.
 3. The method of claim 2, whereinidentifying the hierarchy level for the first BIM file and the secondBIM file further comprises: receiving, by the one or more processors, afirst user input selecting a particular hierarchy level as aplaceholder; and linking, by the one or more processors, the first BIMfile and the second BIM file to the placeholder.
 4. The method of claim1, wherein at least one of the one or more assets are spaces within thebuilding.
 5. The method of claim 4, wherein the data structure furthercomprises a hierarchical list of the spaces within the building.
 6. Themethod of claim 1, further comprising presenting, via a graphical userinterface, a representation of the data structure.
 7. The method ofclaim 1, further comprising mapping, by the one or more processors, thefirst set of BIM objects and the second set of BIM objects to one ormore points within a building automation system (BAS).
 8. The method ofclaim 1, wherein the semantic description is a natural languagedescription.
 9. A system comprising: one or more memory devices havinginstructions stored thereon that, when executed by one or moreprocessors, cause the one or more processors to perform operationscomprising: receiving a first building information model (BIM) file anda second BIM file, the first BIM file and the second BIM file bothassociated with a building comprising one or more assets; identifying afirst set of BIM objects within the first BIM and a second set of BIMobjects within the second BIM, the first set of BIM objects and thesecond set of BIM object each comprising one or more BIM objectsassociated with the one or more assets; identifying one or morerelationships between objects of the first set of BIM objects andobjects of the second set of BIM objects; applying a semanticdescription to the first set of BIM objects, the second set of BIMobjects, and the one or more relationships; and after applying thesemantic description schema, generating a data structure comprising thefirst set of BIM objects, the second set of BIM objects, and therelationships.
 10. The system of claim 9, the operations furthercomprising identifying a hierarchy level for the first BIM file and thesecond BIM file, wherein the hierarchy level indicates a category for acorresponding BIM file.
 11. The system of claim 10, wherein identifyingthe hierarchy level for the first BIM file and the second BIM filefurther comprises: receiving a first user input selecting a particularhierarchy level as a placeholder; and linking the first BIM file and thesecond BIM file to the placeholder.
 12. The system of claim 9, whereinat least one of the one or more assets are spaces within the building.13. The system of claim 12, wherein the data structure further comprisesa hierarchical list of the spaces within the building.
 14. The system ofclaim 9, the operations further comprising presenting, via a graphicaluser interface, a representation of the data structure.
 15. The systemof claim 9, the operations further comprising mapping the first set ofBIM objects and the second set of BIM objects to one or more pointswithin a building automation system (BAS).
 16. The system of claim 9,wherein applying the semantic description comprises mapping the firstset of BIM object, the second set of BIM objects, and the relationshipsto Brick schema.
 17. A method comprising: receiving, by one or moreprocessors, two or more building information model (BIM) filescorresponding to a building comprising one or more building assets;identifying, by the one or more processors, for the two or more BIMfiles, hierarchy levels corresponding to spaces within the building;generating, by the one or more processors, a site portfolio based on thehierarchy levels for the two or more BIM files, wherein the siteportfolio is a data structure that includes a plurality of BIM objectsassociated with the two or more BIM files and defines relationshipsbetween the plurality of BIM objects according to the hierarchy levels;and presenting, by the one or more processors, via a user interface, arepresentation of the site portfolio and a 3-dimensional (3D) model ofthe building based on the two or more BIM files.
 18. The method of claim17, wherein the one or more building assets include at least one ofbuilding equipment or spaces within the building.
 19. The method ofclaim 17, further comprising applying, by the one or more processors, asemantic description schema to the two or more BIM files, the semanticdescription schema describing the plurality of BIM objects andrelationships between the BIM objects in a natural language.
 20. Themethod of claim 17, further comprising mapping, by the one or moreprocessors, the plurality of BIM objects to one or more points of abuilding automation system (BAS).